Iternetlink öfnnen oder schließen
-
Was meinst Du denn mit 'öffnen'? Willst Du die Seite in Deinem Browser anzeigen? Dann mußt Du den Browser starten und die URL als Parameter übergeben.
ShellExecute oder CreateProcess ...
-
Jaepen schrieb:
wenn das ergebnis einen bestimmten wert hat soll z.b einfach die seite www.xyz.de geöffnet werden und dann später wieder geschlossen werden.
Was meinst du mit "Seite"? Willst du einen Webbrowser starten? Falls ja, um welches Betriebssystem geht's?
-
Rrrrrrrrichtichchch ... das Betriebssystem habe ich vergessen ...
ShellExecute oder CreateProcess gilt natürlich nur unter Windows ...
-
Hallo
Ja, ich hab Vista 64 Buiseness und den IE.
Wir können erstma davon ausgen das der IE sogar offen ist und ich dann event nur eine neue Registerkarte öffnen und schließen will.
Ebenso würde mich vll noch interessieren wie ich dann diese internet seite auch aktualisieren kann.Danke schon mal
-
@jappen: was sollen die doppelposts in c und c++?
-
da es mir egal ist ob das in c oder c++ ist.
-
Jaepen schrieb:
Hallo
Wir können erstma davon ausgen das der IE sogar offen ist und ich dann event nur eine neue Registerkarte öffnen und schließen will.
Dann denke ich, ist es am besten, Du besorgst Dir die Handles der entsprechenden Steuerelemente und schickst denen die erforderlichen Messages.
-
und wie besorg ich mir solche steuerelemente?
funktioniert das nicht mit diesem shellexecute? das hab ich mal versucht, aber da bekomm ich immer eine Fehlermeldung.
if (a==5) {ShellExecute(NULL, "open", "www.xyz.de", NULL, NULL, SW_SHOW);}Fehler: Konvertierung des Parameters 2 von 'const char [5]' in 'LPCWSTR' nicht möglich
-
L"open", L"www.xyz.de"
-
jetzt funktioniert es.
Was besagt das L ??jetzt wäre noch das schließen offen, das funktioniert leider noch nicht
if (a==6) {ShellExecute(NULL, L"close", L"www.google.de", NULL, NULL, SW_SHOW);}kann mir da auch noch jemand helfen??
-
scheinbar scheint das etwas schwieriger zu sein, wenn mir da keiner helfen kann
-
Jaepen schrieb:
scheinbar scheint das etwas schwieriger zu sein, wenn mir da keiner helfen kann
Das hat nichts mit dem zu tun. Deine Frage hat einfach so gar nichts mit C++ zu tun.

-
das problem ist, dass du ein anderes programm steuern willst, in deinem Fall
den IE.öffen geht über das ShellExecute aber das auch nur weil der browser auch
über die befehlszeile die addresse erwartet. das geht aber nur beim starten des programmes, d.h. die schließen-nachricht wirst du so nicht senden können.ich sehe da folgende möglichkeiten:
1. "manuelle" eingabe
- handle von der addresszeile holen
- addresse reinschreiben
- [Enter] simulieren2. mit neuem fenster
- mit ShellExecute oder CreateProcess browser starten und seite anzeigen
- WM_CLOSE oder WM_DESTROY an das fenster sendenmfg helferlein
-
mit ShellExecute oder CreateProcess browser starten und seite anzeigen
das mache ich bis jetzt auch
ShellExecute(NULL, L"open", L"www.abc.de", NULL, NULL, SW_SHOW);.... mein Problem ist das ich nicht weiß wie ich das WM close an das fenster senden kann???
gruß
-
Jaepen schrieb:
scheinbar scheint das etwas schwieriger zu sein, wenn mir da keiner helfen kann
Ich habe Dir doch gesagt, daß Du Dein Vorhaben wohl nur mit direkten Messages an den Browser, bzw. seine dafür vorgesehenen Steuerelemente umsetzen kannst.
Und wir hier schon jemand bemerkte, das ist kein C / C++ - Problem, sondern eines für das WINAPI-Forum; dort geht es nämlich um Windows-Programmierung (vorausgesetzt, daß Windows Deine Zielplattform ist).
Es macht aber den Anschein, als ob Du so gar keine Ahnung davon hast, worum es hier geht. Vielleicht solltest Du Dir erst mal etwas weniger anspruchsvolle Ziele vornehmen.
Ansonsten kann ich zum Thema Windowsprogrammierung das gleichnamige Buch von Charles Petzold empfehlen.
-
Jaepen schrieb:
.... mein Problem ist das ich nicht weiß wie ich das WM close an das fenster senden kann???
Fensterhandle holen mit
FindWindow - dann PostMessage oder auch SendMessage.
-
Belli schrieb:
Jaepen schrieb:
.... mein Problem ist das ich nicht weiß wie ich das WM close an das fenster senden kann???
Fensterhandle holen mit
FindWindow - dann PostMessage oder auch SendMessage.Dann öffnet sich mit ShellExecute im IE7 ein neuer Tab und mit der WM_CLOSE Nachricht, welche du an dieses Fenster schickst, schliesst sich der ganze IE. Der User wird den Entwickler töten!
@Jaepen,
Dein Vorgehen ist schon einfach gesagt falsch. Was soll das überhaupt bringen? Wieso willst du einen Link öffnen und später wieder schliessen?Grüssli
-
Dravere schrieb:
Belli schrieb:
Jaepen schrieb:
.... mein Problem ist das ich nicht weiß wie ich das WM close an das fenster senden kann???
Fensterhandle holen mit
FindWindow - dann PostMessage oder auch SendMessage.Dann öffnet sich mit ShellExecute im IE7 ein neuer Tab und mit der WM_CLOSE Nachricht, welche du an dieses Fenster schickst, schliesst sich der ganze IE. Der User wird den Entwickler töten!
Ja ... will ICH WM_CLOSE an den IE schicken? Nein, ich habe vorgeschlagen, die erforderlichen Messages direkt an die nötigen Controls zu schicken.
-
Belli schrieb:
Ja ... will ICH WM_CLOSE an den IE schicken? Nein, ich habe vorgeschlagen, die erforderlichen Messages direkt an die nötigen Controls zu schicken.
Ich will sehen, wie du mit FindWindow den Tab findest. Vielleicht geht es sogar, aber es ist und bleibt eindeutig ein falscher Weg ...
Grüssli
-
Stichwort DDE
schau mal ob du dazu in bezug auf den IE was findest.