VNC 및 TeamViewer와 비슷한 오픈 소스 원격 데스크톱 도구를 작성하고 있습니다. 나는 TeamViewer가 스위치 사용자 또는 워크 스테이션 잠김 화면에서 화면 캡처를 계속하는 것을 알아 냈습니다. 원격 사용자가 암호를 입력하고 워크 스테이션의 잠금을 해제 할 수 있습니다. 나는 똑같이하고 싶다.Windows 로그온 화면에서 드라이버를 사용하여 시뮬레이션 입력
는 내가 읽은 :
Updated: Interacting with the user on the windows logon screen
https://stackoverflow.com/questions/9485530/capturing-image-during-windows-logon-invalid-password
Adding command button to Windows Logon screen
hook a hotkey from windows logon screen
How to catch a key in Windows 7 logon screen?
이 게시물에서Displaying Window on Logon Screen Using C# in Windows XP
Removing Windows Logon screen through a service, 나는 확실히 격리 된 세션에서 입력을 시뮬레이션하는() SendInput을에 대한 간단한 전화 아님을 모았다. 하지만 드라이버를 사용하는 것이 가능합니까? (특히 키보드 필터 드라이버라고 생각되지만 확실하지 않습니다)? 그렇다면, C#에서 서비스가 (사용자 세션 외부에서 실행되도록) 인터셉터 드라이버와 상호 작용하여 키 누르기를 시뮬레이션하는 것을 생각하고 있습니다.
"왜 그냥 사용해 보지 않으시겠습니까?", 차단 서비스에 대한 .NET 래퍼가 없습니다. 그런 서비스를 테스트 해 볼 수 있도록 일반 동의가 ' 가능하면 .NET 래퍼를 작성하는 데 시간을 낭비하고 싶지 않습니다.
찾았습니다. an keyboard driver called Interception (that will be released open-source in the future)입니다. 바로 find the source here (the source is only the C communication API wrapper surrounding the actual kernel driver) 수 있습니다.
또 다른 질문은 ... 나는 파일이 드라이버를 만드는 것에 대해 혼란스러워합니다. C로 프로그래밍 된 인터셉터 DLL 라이브러리는 .DLL로 컴파일됩니다. 그러나 .sys 확장자의 드라이버가 아닙니다. 인터셉터 DLL을 실제 드라이버로 컴파일하는 방법은 무엇입니까? 그런 다음 어떻게 설치합니까?
편집 :A .NET wrapper does exist. 필자는 'x'키를 눌렀을 때 샘플 콘솔 응용 프로그램을 전체 암호를 입력하도록 수정했으며 워크 스테이션 잠김 화면뿐만 아니라 Windows 로그온 화면에서도 성공적으로 작동했습니다. 그래서 작동합니다.
편집 :C# wrapper library for this keyboard driver is here.
나는 같은 상황에 처해있다. Windows 서비스에서 'SendInput'을 실제로 사용해 보셨습니까? 활성화되어있는 동안 입력이 로그온 화면으로 전송되고 있는지 확인 하시겠습니까? – tunafish24