Immer eine Taste, Griff aus einer anderen Anwendung

Ich habe ein Programm senden muss, um die BM_CLICK Nachrichten in andere Anwendungen-Taste.
Ich kann das übergeordnete Fenster behandeln, aber wenn ich versuche mit dem Knopf Griff, wenn gibt immer 0 zurück,

Bekam ich die Beschriftung für die Schaltfläche name und Typ Schaltfläche aus Spy++ es scheint richtig, aber ich weiß, ich muss Sie bekommen haben, etwas falsch. unten ist mein code

 public const Int BM_CLICK = 0x00F5;

 [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
        private static extern IntPtr SendMessage(IntPtr hwnd, uint Msg, IntPtr wParam, IntPtr lParam);

        [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
        static extern IntPtr FindWindowEx(IntPtr hwndParent, IntPtr hwndChildAfter, string lpszClass, string lpszWindow);



private void button1_Click(object sender, EventArgs e)
{
    Process[] processes = Process.GetProcessesByName("QSXer");

    foreach (Process p in processes)
    {
        ////the Button's Caption is "Send" and it is a "Button".  
        IntPtr ButtonHandle = FindWindowEx(p.MainWindowHandle, IntPtr.Zero, "Button", "Send");
       //ButtonHandle is always zero thats where I think the problem is 
    SendMessage(ButtonHandle, BM_CLICK, IntPtr.Zero, IntPtr.Zero);

    }

}

Spy Screenshot

Immer eine Taste, Griff aus einer anderen Anwendung

InformationsquelleAutor Mike | 2010-09-23

Schreibe einen Kommentar