キーボード監視(C#/VB.NET)
2010年10月29日
キーボードの押下を監視するサンプル(ソース/コード)です。他(別)のアプリケーションで押下されたキーボードの押下も監視します。パソコンが操作されているかどうか、アイドル状態かどうかのチェックに使用出来ると思います。押されているキーのコードも分かるのでキーロガーにも応用出来ると思います。
' -----------------------------------------------------------
' キーボードの押下を監視するサンプル(VB.NET/VS2005)
Private Declare Function GetAsyncKeyState Lib "user32.dll" _
(ByVal vKey As Integer) As Integer
Private Sub Timer1_Tick( _
ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Timer1.Tick
For i As Integer = 1 To 256
Dim rtn As Integer = GetAsyncKeyState(i)
If (rtn And 1) <> 0 Then
System.Diagnostics.Debug.WriteLine( _
"キーボード押下:" & i)
End If
Next i
End Sub
' -----------------------------------------------------------
// ----------------------------------------------------------
// キーボードの押下を監視するサンプル(C#.NET/VS2005)
[System.Runtime.InteropServices.DllImport("user32.dll")]
private static extern int GetAsyncKeyState(int vKey);
private void timer1_Tick(object sender, EventArgs e)
{
for (int i = 1; i <= 256; i++)
{
int rtn = GetAsyncKeyState(i);
if ((rtn & 1) != 0)
{
System.Diagnostics.Debug.WriteLine(
"キーボード押下:" + i);
}
}
}
// ----------------------------------------------------------