2013-06-05 129 views
1

using如下:爲什麼我收到「無法找到類型或名稱空間名稱LowLevelKeyboardProc」?

using System; 
using System.Diagnostics; 
using System.Windows.Forms; 
using System.Runtime.InteropServices; 
using System.IO; 

,我這裏收到的錯誤: private static LowLevelKeyboardProc _proc = HookCallback;

這裏:[DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)] private static extern IntPtr SetWindowsHookEx(int idHook, LowLevelKeyboardProc lpfn, IntPtr hMod, uint dwThreadId);

我使用VS2012 W/C#和下面這個教程:http://null-byte.wonderhowto.com/how-to/create-simple-hidden-console-keylogger-c-sharp-0132757/

+0

您需要自己創建一個這樣的委託(和相關的結構)。 – SLaks

+0

它是winapi文檔中的佔位符號,它實際上並不存在。你需要自己聲明委託類型。這個有很多*谷歌點擊。 –

+0

,你可以任意命名它,例如LLKBDProc,... :) –

回答

3

您需要定義委託。您引用的文章使用:

private delegate IntPtr LowLevelKeyboardProc(
    int nCode, IntPtr wParam, IntPtr lParam); 

這包含在the referenced article的「步驟3」中。

+0

哇...它竟然是一個錯誤造成的問題... 我已經鍵入它作爲'LowLevelKeyBoardProc'而不是' LowLevelKeyboardProc'。這是這個評論,讓我注意到。 –

相關問題