Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

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

  • 2 Wochen später...

hat keiner von euch eine idee ?

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.

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.

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?

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.

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

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.