PedroS 0 Denunciar post Postado Julho 30, 2007 Como utilizar no C# o PostMessage(hHandle, WM_LBUTTONDOWN, "0", pPnt)?Já consegui pegar o Handle da janela e adicionei a a variável WM_LBUTTONDOWN com seu respectivo "código" porem não consigo passar XY, no delphi eu utilizava o makelong(XY), porem no C# não tenho idéia, alguem sabe? Compartilhar este post Link para o post Compartilhar em outros sites
PedroS 0 Denunciar post Postado Julho 31, 2007 Como utilizar no C# o PostMessage(hHandle, WM_LBUTTONDOWN, "0", pPnt)? Já consegui pegar o Handle da janela e adicionei a a variável WM_LBUTTONDOWN com seu respectivo "código" porem não consigo passar XY, no delphi eu utilizava o makelong(XY), porem no C# não tenho idéia, alguem sabe? Tentei utilizar public const uint WM_LBUTTONDOWN = 0x0201; public const uint WM_LBUTTONUP = 0x0202;[DllImport("user32.dll")] public static extern int SendMessage( int hWnd, // handle to destination window uint Msg, // message long wParam, // first message parameter int lParam // second message parameter );public static void SendMouseClick(int iHandle, int X, int Y) { int lparm = (Y << 16) + X; long lngResult = SendMessage(iHandle, WM_LBUTTONDOWN, 0, lparm); long lngResult2 = SendMessage(iHandle, WM_LBUTTONUP, 0, lparm); }SendMouseClick(h, 623, 400); public static int MakeLong(int nLow, int nHigh) { return (int)(nLow + nHigh * 65536); } public const uint WM_LBUTTONDOWN = 0x0201; public const uint WM_LBUTTONUP = 0x0202;[DllImport("user32.dll")] public static extern int SendMessage( int hWnd, // handle to destination window uint Msg, // message long wParam, // first message parameter long lParam // second message parameter );public static void SendMouseClick(int iHandle, int X, int Y) { long lparm = MakeLong(X, Y); long lngResult = SendMessage(iHandle, WM_LBUTTONDOWN, 0, lparm); long lngResult2 = SendMessage(iHandle, WM_LBUTTONUP, 0, lparm); } Os dois retornaram os mesmos erros... "A call to PInvoke function 'WindowsApplication3!WindowsApplication3.Form1::SendMessage' has unbalanced the stack. This is likely because the managed PInvoke signature does not match the unmanaged target signature. Check that the calling convention and parameters of the PInvoke signature match the target unmanaged signature." Compartilhar este post Link para o post Compartilhar em outros sites
eriva_br 7 Denunciar post Postado Julho 31, 2007 tenta ver se este artigo ajuda: http://www.codeproject.com/csharp/runninginstanceie.asp bons estudos t+ Compartilhar este post Link para o post Compartilhar em outros sites
PedroS 0 Denunciar post Postado Agosto 2, 2007 Vlw kra, funcionou certinho, dei uma estuda no exemplo e funciou. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites