U-- °LoneWolf° Geschrieben 19. Juni 2004 Teilen Geschrieben 19. Juni 2004 hallo zusammen, ich bin dabei mir eine art iexplorer zu schreiben mit dem ich geladene html formulare forbelegen kann hiertu habe ich mir folgende funktion geschrieben (bzw. ein funktion die ähnliches leistet angepasst). void TMDIChild::schreibhtm(AnsiString in, AnsiString feld) { IHTMLDocument2 *HTMLDoc = NULL; if(SUCCEEDED(AufgabenObjekt->Document->QueryInterface(IID_IHTMLDocument2,(LPVOID*)&HTMLDoc))) { IHTMLElementCollection *pAll = NULL; if(SUCCEEDED(HTMLDoc->get_all(&pAll))) { TVariant name = feld; // hier kommt der name des Feldes hin (siehr HTML source) IDispatch *pDisp = NULL; TVariant index=0; if(SUCCEEDED(pAll->item(name, index, &pDisp))) { if(pDisp) { IHTMLInputElement *pInput = NULL; // mshtml.h pDisp->QueryInterface(IID_IHTMLInputElement, (LPVOID*)&pInput); pDisp->Release(); if(pInput) { //WideString mybuffer; //pInput->(WideString("Hallo")); //hier der String, der zu schreiben ist. pInput->put_value(WideString(in)); } pInput->Release(); } } } pAll->Release(); } HTMLDoc->Release(); } das problem besteht darin das die funktion nur jedes 2. mal ihren dienst tut :confused: d.h. sie trägt mal was ein mal nicht realiesieren wollte ich das mit BCBuilder. hat einer von euch ne idee was ich falsch mache? schon mal danke im vorraus gruß LoneWolf Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
U-- °LoneWolf° Geschrieben 29. Juni 2004 Autor Teilen Geschrieben 29. Juni 2004 hat keiner von euch eine idee ? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Klotzkopp Geschrieben 29. Juni 2004 Teilen Geschrieben 29. Juni 2004 Hast du den Debugger benutzt, um zu prüfen, ob das Programm auch wie erwartet in die if-Blöcke springt? Falls nicht, welches if schlägt fehl? Oder wird die Funktion vielleicht nur jedes zweite Mal überhaupt aufgerufen? Ist es genau jedes zweite Mal (also immer abwechselnd), oder ist das eine Schätzung? Das sind alles Informationen, die du liefern musst, bevor dir jemand sinnvoll helfen kann. Einfach nur den Code hinzuklatschen, noch dazu ohne Code-Tags, bringt bei logischen Fehlern nicht viel. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
U-- °LoneWolf° Geschrieben 29. Juni 2004 Autor Teilen Geschrieben 29. Juni 2004 Hast du den Debugger benutzt, um zu prüfen, ob das Programm auch wie erwartet in die if-Blöcke springt? Falls nicht, welches if schlägt fehl? Oder wird die Funktion vielleicht nur jedes zweite Mal überhaupt aufgerufen? Ist es genau jedes zweite Mal (also immer abwechselnd), oder ist das eine Schätzung? Das sind alles Informationen, die du liefern musst, bevor dir jemand sinnvoll helfen kann. Einfach nur den Code hinzuklatschen, noch dazu ohne Code-Tags, bringt bei logischen Fehlern nicht viel. achso ok dachte das was ich oben geschrieben hätte würde ausreichen. Das Problem ist er geht jedes mal korekt in die IF blöcke und es hat auch den anschein das er jedesmal etwas rein schreiben würde. Das tut er jedoch nur jedes 2. mal. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Klotzkopp Geschrieben 29. Juni 2004 Teilen Geschrieben 29. Juni 2004 achso ok dachte das was ich oben geschrieben hätte würde ausreichen.Je detaillierter die Informationen sind, die du lieferst, desto besser kann man dir helfen. Das tut er jedoch nur jedes 2. mal. Siehe mein letzter Beitrag: Was meinst du damit? Ist das eine Schätzung? Ist es abwechselnd? Falls abwechselnd, klappt es beim ersten oder beim zweiten Mal? Hängt das Verhalten vom Feld oder vom Inputtyp ab? Was ist mit dem Rückgabewert von put_value? Ist der in Ordnung? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
U-- °LoneWolf° Geschrieben 29. Juni 2004 Autor Teilen Geschrieben 29. Juni 2004 Also das 1. mal klapts das 2. mal nich das 3. mal gehts das 4. mal nich .............. Das Problem besteht auch wenn ich es 2 mal mit dem selben feld versuche. Zur rückgabe kann ich leider nichts sagen da ich hier grad kein c++ Builder habe. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
U-- °LoneWolf° Geschrieben 6. Juli 2004 Autor Teilen Geschrieben 6. Juli 2004 Hi also ich habe das problem nochmal genauer unter die lupe genommen die funktion pInput->put_value(WideString(in)); hat soweit ich weis keine rückgabe und aus irgendeinem grund (den ich leider nicht kenne) schreibt sie beim 1. mal was rein beim 2. mal nichs usw... leider habe ich garkeine idee woran das liegen kann schon mal danke im voraus Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.