FindWindow



  • Hi,

    habe in den FAQ einen Beitrag um den IE automatisch zu aktualisieren, in dem man ihm vorgaukelt, die F5 Taste wurde gedrückt. Funzt wunderbar, meine Frage ist nun, wie kann ich das auf den Opera anwenden?
    Um zu sehen, ob der IE aktiv ist benötigt man ja folgendes:

    HWND hwnd = FindWindow("IEFrame", NULL);
    

    Was muss ich nun für den Opera anstelle von "IEFrame" schreiben? Gibt es eine Liste, wo man diese "Strings" für ein beliebiges Programme nachschauen kann?



  • Bei BCB gibt es ein Tool namens WinSight im Packet was die realen "Fenstertitel" anzeigt. Dort gibt es auch eine FindWindow Options 😉



  • Thanks, doch leider bin ich zu doof für dieses Tool. Wenn ich das in der Hilfe richtig kapiert habe, ist das was zuletzt in " " steht der Fenstertitel. Bei mir steht da allerdings niergends IEFrame. Kannst du mir bitte noch mals behilflich sein?



  • Versuch es mal mit Microsofts Spy++, Winsight habe ich heute auch zum ersten mal gestartet 😉 Hoffe das Jansen hier mal reinschaut 😉



  • Hast du einen Link, wo ich das runterladen kann, oder gibts das nicht als freeware?





  • Danke das mit dem Tool hat geklappt, ich kann nun den Fenstername sämtlicher Progis ermitteln. Ich kann die F5-Taste auch an sämtliche Progis sende (auf jedenfall bei Word, IE und Acrobat) hats geklappt, bloss beim Opera funzts nicht. Das Fenster findet er (es gibt auf jedenfall keine Fehlermeldung), aber er setzt es nicht als aktives Fenster 😕 . Hier mal der Code:

    void __fastcall TForm1::Timer1Timer(TObject *Sender)
    {
            HWND hwnd = FindWindow(Edit1->Text.c_str(),NULL);
            if(hwnd)
            {
                    SetForegroundWindow(hwnd);
                    keybd_event(VK_F5, 0, 0, 0);
                    keybd_event(VK_F5, 0, KEYEVENTF_KEYUP, 0);
            }
            else
            {
                    MessageBox(NULL,Edit1->Text.c_str(),"UNABLE TO FINDE WINDOW",MB_OK|MB_ICONERROR);
            }
    }
    


  • Edit: Bist du sicher das der Fenstertitel richtig ist ?



  • 100% sicher bin ich mir nicht, microsoft spy++ gibt mir den Titel "OpWindow" zurück. Da alle anderen Titel die ich mit spy++ ermittelt und mit meinem progi getestet habe, stimmten und ich auch kEine Fehlermeldung erhalte, gehe ich mal davon aus, dass er stimmt. Kann ich das noch anders überprüfen, ob er auch wirklich stimmt?


Anmelden zum Antworten