2012-03-11 17 views
2

私はVNCとTeamViewerのようなオープンソースのリモートデスクトップツールを作成しています。私は、TeamViewerがSwitch UsersまたはWorkstation Locked画面で画面をキャプチャし続けていることに気付きました。リモートユーザはパスワードを入力してワークステーションのロックを解除できます。私は同じことをしたい。ドライバを使用して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

https://stackoverflow.com/questions/7183241/launch-windows-on-screen-keyboard-at-logon-screen-on-win7

これらの記事からDriver to Simulate Keypress

Removing Windows Logon screen through a service

How to catch a key in Windows 7 logon screen?

Displaying Window on Logon Screen Using C# in Windows XP

、私は)独立セッション中に入力をシミュレートすることは間違いなく、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

+0

私は同じ状況にあります。実際には、Windowsサービスから「SendInput」を試して、アクティブな間に入力がログオン画面に送信されているかどうかを確認しましたか? – tunafish24

答えて

2

現在、実際のドライバはオープンソースではありません。ドライバインストーラがそれらをインストールします(keyboard.sysとmouse.sys)。オープンソースは、それらとの通信のAPIだけです。 オープンソース化の前にカーネルコンポーネントの書き換えを計画しています。

+0

オープンソースのキーボードとマウスドライバである私の投稿と、どれほどエキサイティングなのかを編集しました。本当にありがとう。 – Jason

0

答えに関心のある他の人々の場合:はい、動作します。

https://github.com/candera/kchordrにあるインターセプトキーボードドライバ用の.NETラッパーを使用して遊んでください。 Windowsのログオン画面でもキーを置き換えます。

関連する問題