Вопрос сам по себе в значительной степени описывает мою общую проблему. Вот что я сделал до сих пор.Как получить координаты курсора мыши от lParam от метода обратного вызова мыши низкого уровня?
// the event is registered as following
mouseProc = new CallWndRetProc(MouseProc); // get keys
MouseProcHandle = SetWindowsHookEx(WH_MOUSE_LL, mouseProc, IntPtr.Zero, 0);
// The callback method
public static IntPtr MouseProc(int nCode, int wParam, IntPtr lParam)
{
if (wParam == WM_LBUTTONUP && MouseProcHandle != IntPtr.Zero)
{
}
if (wParam == WM_MOUSEMOVE)
{
// Want to get mouse position here
}
return CallNextHookEx(IntPtr.Zero, nCode, wParam, lParam);
}
Есть ли надежный способ получить положение мыши?
примеры кода будут оценены Благодаря
Marshal.PtrToStructure() для преобразования lParam в MSLLHOOKSTRUCT. Это делалось тысячи раз раньше, не изобретайте это колесо. –