Fenster auslesen



  • ...und warum nimmst Du nicht GetWindowText bzw. GetDlgItemText?

    Dann frage ich mich auch, ob Deine Variable TEXT sich nicht mit dem TEXT() Makro beißt...

    Versuch's doch mal so:

    char szFensterTitel[MAX_PATH];
    GetWindowText(windowread, szFensterTitel, MAX_PATH);
    


  • also ich will den text aus einem anderen prozess holen

    und in der msdn steht da, das ich eine WM_GETTEXT message direkt senden soll
    anstatt GetWindowText()



  • Mr.Lover schrieb:

    und in der msdn steht da, das ich eine WM_GETTEXT message direkt senden soll anstatt GetWindowText()

    Wo bitte steht das?

    Ich hasse es, solche Fragen zu stellen, aber was soll's:

    1. Hast du die TEXT-Variable umbenannt?
    2. Hast du's mit GetWindowText() probiert?

    Das hättest du schon längst beantworten müssen!



  • des steht in der msdn

    MSDN schrieb:

    To retrieve the text of a control in another process, send a WM_GETTEXT message directly instead of calling GetWindowText.

    des steh in der msdn

    TEXT variable hab ich umgenannt und GetWindowText() benutzt klappt aber alles nich



  • Zu welchem Thema steht das in der MSDN?

    Mr.Lover schrieb:

    TEXT variable hab ich umgenannt und GetWindowText() benutzt klappt aber alles nich

    Dann machst du was falsch! Code, bitte.



  • int lesen()
    {
               char text[MAX_PATH],DEBUG[100]; 
               HDC DC=GetDC(NULL);  
    
               GetWindowText(yahooread, text, MAX_PATH);  
    
               TextOut(DC,0,0,text,strlenself(text));
               DeleteDC(DC);     
               return 0;              
    
    }
    


  • strlenself? Nie gehört. Versuch mal lstrlen. Hast du's auch schonmal mit text = "HALLO" oder so versucht?



  • des strlenself hab ich selbstgemacht klappt auch prima des richtige strlen geht bei mir irgentwie nicht

    also text = "HALLO" geht

    aber vielleicht liegts auch daran das ich den text aus einem anderen prozess nehmen will

    oder es liegt an der klasse
    weil bei ner anderen funktion geht des wenn ich WM_GETTEXT an ein window schicke des rich edit als klasse hat



  • Mr.Lover schrieb:

    des strlenself hab ich selbstgemacht klappt auch prima des richtige strlen geht bei mir irgentwie nicht

    LOL, hä?

    Mr.Lover schrieb:

    aber vielleicht liegts auch daran das ich den text aus einem anderen prozess nehmen will

    Schmarrn!

    Mr.Lover schrieb:

    weil bei ner anderen funktion geht des wenn ich WM_GETTEXT an ein window schicke des rich edit als klasse hat

    Ich vermisse irgendwie die Stelle, wo Du uns zeigst, das "yahooread" ein gültiger Handle auf ein Window (HWND) ist...

    Wie holst Du dir den Handle auf das Fenster?

    Welchen Wert hat der Handle zur Laufzeit (Dein Debugger weiß sowas)?



  • Mr.Lover schrieb:

    des strlenself hab ich selbstgemacht klappt auch prima des richtige strlen geht bei mir irgentwie nicht

    Es geht nicht... Super Problembeschreibung. Ziemlich dämlich, wenn man gerne möchte, dass einem geholfen wird IMHO. Ziemlich wahrscheinlich hattest du einfach stdio.h nicht eingebunden, du Nudel! Außerdem solltest du lstrlen benutzen. Da brauchst du auch kein stdio.h.



  • nneee mein compiler is ziemlich kaputt der erkennt nich mal strcpy() und ich hab stdio.h eingebunden naja auch egal

    also des handle hat einen richtigen wert und des window isn von nem childwin ein childwin und des bekomm ich mit

    yahooread=FindWindowEx(yahoochild,NULL, "Internet Explorer_server",NULL);
    


  • Also ich weiß echt nicht wie ich jemandem helfen soll, dessen "compiler so kaputt ist das er nichtmal strcpy() kennt"...



  • Soll ich dir meinen Werkzeugkasten leihen?



  • auja



  • Ich nehme nicht an, dass der Internet-Explorer den Seiteninhalt direkt im Window-Text gespeichert hat :p



  • wie komm ich denn dann an den text???

    Ist der Text vielleicht im RAM ???


Anmelden zum Antworten