잘못된 정보가 있다면, 꼭 댓글로 알려주세요(비로그인 익명도 가능).
여러분의 피드백이 저와 방문자 모두를 올바른 정보로 인도할 수 있습니다.
감사합니다. -현록
현록의 기록저장소
원클릭 마우스 정확도 향상 끄기 본문
Moonlight를 포함한 몇몇 원격 프로그램 중에는
Host에 가상 키보드를 세팅하면서 마우스의 '포인터 정확도 향상'을 항상 켜버리는 프로그램들이 있다.
원격 Client에서 제어할 때는 모르다가
다시 직접 Host에 앉아서 제어할 때는 마우스가 뭔가 달라졌단게 느껴질 것이다.
개인 컴퓨터에서 항상 켜두고 사용하는 도구 프로그램에 마우스 정확도 향상 끄기와 US 키보드 제거 등을 탑재해두고 있었으나,
한 번 따로 빼내서 올려본다.
레지스트리를 덮는 방식으로도 끄는 것 같던데,
정확도 향상을 끈 상태의 레지스트리를 따로 빼냈다가 덮어씌워도
왜인지 적용이 안되서, 난 이 방법은 못 써서 아예 함수를 실행하는 쪽을 선택했었다.
압축 파일의 두 파일(MouseNoCorrection.ps1, MouseNoCorrection.bat)을 한 폴더에 두고,
bat파일만 실행해주면 마우스 정확도 향상 옵션이 꺼진다.
(관리자 권한 필요없음)
두 파일의 코드는 아래와 같다.
위 파일이 안 받아지거나, 찝찝하면 직접 메모장으로 작성해서 확장자와 이름만 잘 맞춰주면 된다.
(MouseNoCorrection.bat)
@echo off
Powershell.exe -noprofile -executionpolicy bypass -file MouseNoCorrection.ps1
(MouseNoCorrection.ps1)
Function MouseNoCorrection {
$pinvokeCode = @"
using System;
using System.Runtime.InteropServices;
using Microsoft.Win32;
namespace MyMouse {
public class MouseCorrection {
[DllImport("user32.dll")]
private static extern int SystemParametersInfo(uint uiAction, uint uiParam, IntPtr pvParam, uint fWinIni);
public static void SetNoCorrection() {
int[] mouseParams = new int[3];
SystemParametersInfo(0x0003, 0x0000, GCHandle.Alloc(mouseParams, GCHandleType.Pinned).AddrOfPinnedObject(), 0x0000);
mouseParams[2] = 0;
SystemParametersInfo(0x0004, 0x0000, GCHandle.Alloc(mouseParams, GCHandleType.Pinned).AddrOfPinnedObject(), 0x0002);
}
}
}
"@
Add-Type $pinvokeCode -ErrorAction SilentlyContinue
[MyMouse.MouseCorrection]::SetNoCorrection()
}
MouseNoCorrection
bat파일의 바로가기를 만들어서 응용하는 방식은 아래 포스트 마지막 부분 참고.
'PC원격제어 > help' 카테고리의 다른 글
원클릭 모니터변경 종결 (다중모니터,해상도,주사율,배율,회전,위치,...) (11) | 2023.02.03 |
---|---|
원클릭 배율(DPI) 변경 (6) | 2022.05.30 |
해상도 추가하기 (1) | 2020.03.15 |
VB-CABLE(가상 케이블) (4) | 2020.02.29 |
원클릭 해상도 변경 (주사율(Hz) 추가, 모니터 지정 추가) (41) | 2019.05.16 |
잘못된 정보가 있다면, 꼭 댓글로 알려주세요(비로그인 익명도 가능).
여러분의 피드백이 저와 방문자 모두를 올바른 정보로 인도할 수 있습니다.
감사합니다. -현록