2010-12-07 10 views
0
uint x = 0x00000001; 
uint y = 0x00FF00FD; 
NativeMethods.PostMessage(hwnd, NativeMethods.WM_LBUTTONDOWN, x, y); 
NativeMethods.PostMessage(hwnd, NativeMethods.WM_LBUTTONUP, x, y); 

Mit den obigen Anweisungen kann ich in einem ausgewählten Bereich in einer externen Fensteranwendung klicken. Nun, ich braucheein + ctrlc zum Fenster einer -Abfrage zu senden.Win32 API - Strg A + Strg C

Können Sie mir bitte sagen, wie dies mit Win32 API zu tun ist.

Antwort

1

Würden Sie nicht besser bedient werden, indem Sie eine WM_GETTEXT senden, um den tatsächlichen Text im Fenster zu erhalten? Anwendungen, die auf Maus/Tastatur-Emulation beruhen, sind bestenfalls brüchig.

+0

NativeMethods.AttachThreadInput (Prozess-ID, currentThreadId, true); int focussed = NativeMethods.GetFocus(); StringBuilder-Generator = neuer StringBuilder (500); NativeMethods.SendMessage (fokussiert, WM_GETTEXT, builder.Capacity, Builder); – Gooose

+0

Das obige scheint nicht zu funktionieren – Gooose

+0

Der 'Builder' ist leer. – Gooose

Verwandte Themen