014
03.11.2003, 18:04 Uhr
Uwe
C/C++ Master (Administrator)
|
Hallo, ja indem Du das Ergebnis siehst :). Mal Spass beiseite: PostMessage kehrt sofort nach der Abarbeitung wieder zurück. SendMessage halt nicht, was folgendes kleine Bsp. demonstriert. Wenn Du das PostMessage durch SendMessage ersetzt, wird der Quellcode nicht korrekt ausgeführt
C++: |
HWND hWnd = ::FindWindow("NOTEPAD",NULL); if (hWnd){ SetForegroundWindow(hWnd); ShowWindow(hWnd,SW_NORMAL); Sleep(50); // Zeit geben zum öffen PostMessage(hWnd,WM_COMMAND,2/* 4 */,0); // da sofort zurück Sleep(100); // nochmals warten HWND hDlg = FindWindow(NULL,"Datei Speichern unter"); // Handle zum Dialog // evtl. String ändern if(hDlg){ HWND hChild = GetDlgItem(hDlg,0x47C); //0x47C gemäß Spy++ Se ID SendMessage(hChild,WM_SETTEXT,NULL,(LPARAM)(LPCTSTR)"tux.txt"); // Nachricht verschicken }
|
-- "Es ist schwierig, ein Programm wirklich idiotensicher zu machen, weil Idioten so genial sind."
Bis dann... Uwe |