私はあなたがそのような質問のために私を嫌っていることを知っています。しかし、誰かが次のコードが何をしているか教えてくれますか?このAPIは正確に何であり、何をしていますか?
私はいくつかのライブラリがロードされていることを意味します、私はそれを取得します。プラスいくつかの方法がありますが、それでも私はそれを取得しません。ここで
F.e:
[DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
[return: MarshalAs(UnmanagedType.Bool)]
はコードです:
private static class API
{
[DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
public static extern IntPtr SetWindowsHookEx(
int idHook,
HookDel lpfn,
IntPtr hMod,
uint dwThreadId);
[DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
[return: MarshalAs(UnmanagedType.Bool)]
public static extern bool UnhookWindowsHookEx(IntPtr hhk);
[DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
public static extern IntPtr CallNextHookEx(
IntPtr hhk,
int nCode,
IntPtr wParam,
IntPtr lParam);
[DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)]
public static extern IntPtr GetModuleHandle(
string lpModuleName);
}
あなたは私に行の行をそれを説明する必要はありません。少なくとも私がそれを読むことができる参考文献を与えてください。
Thxで事前に!
すべてのコードでは、P/Invokeによって提供されるいくつかのメソッドが宣言されています。それ自体は何もしません。実行時に使用されるメソッドは、使用されているものに答えるためにより重要です。 –