in DOS vom Programm aus Link ins Internet?
-
stimmt.. ok, no system,
manchmal will ich windows.h nicht mit dabei haben..z.B. mein djgpp fährt sie nicht mehr.
dann gibts noch die möglichkeit..
char prog[]="D:\\Programme\\Internet Explorer\\IEXPLORE.EXE"; execl( prog, prog,"http://www.c-plusplus.net", NULL );
-
aber ich weiß den pfad des Browsers (z.B. IE) vom jeweiligen Nutzer doch nicht)
kann ich denn ganz normal die ShellExecute(...); funktion auch in DOS (???) benutzen? Die benutze ich ja auch bei meinen Windowsprogrammen, aber dass das auch in dos geht, wusste ich nicht... muss ich etwas spezielles einbinden bzw. wie ist der code nun für shellexecute und dos?
-
wenn der pfad nicht bekannt ist.. nutze madys vorschlag
#include <windows.h> int main(){ ShellExecute(NULL, "open", "http://www.c-plusplus.net/", NULL, NULL, SW_SHOW); }
du programmierst dos? dann würde der ie nicht da sein
-
SO ICH HABE WINDOWS.H INCLUDIERT; ABER FEHLER: FUNCTION "SHELLEXECUTE" SHOULD HAVE A PROTOTYPE !
Was ist FALSCH? (SORRY WEGEN DER GRO?EN SCHRIFT; PROBLE_E _IT DER TASTATUR)
-
schreib ShellExecute richtig
und hör auf zu schreien
-
genau so schreib ich es, es ist kopiert von deinem code, also genau richtige syntax; (die großschreibung kam nur von dem tastaturproblem)
HILFE.
-
ShellExecute funktioniert nicht unter DOS. DOS ist nicht multitaskingfähig, also muss dein Programm beendet werden, bevor ein Browser gestartet wird. Hast du überhaupt einen textbasierten DOS-Browser?
-
wenn shellexecute nicht funktiont, wie mach ichs dann? geht es so, dass ich im code dort, wo ich auf homepage klickt, erst exitte (also schließe) und dann shellexecute aufrufe? naja, selbst die syntax funktioniert ja nichtmal
-
mal genau erklären:
ist hier die dosbox am start ? (was ich vermute) oder "richtiges dos"??
welcher compiler?
so long
ps: ich bin davon ausgegangen, daß du mit dosbox unter windows arbeitest, damit du den ie überhaupt ansprechen kannst...
[ Dieser Beitrag wurde am 02.01.2003 um 15:45 Uhr von elise editiert. ]
-
ich arbeite unter windows mit dem Compiler/dos-styled IDE "Borland C++ Dos", ganz ähnlich wie Turbo Pascal aufgebaut, also mit blauem Codefenster, etc. Ich arbeite also nicht unter Dos, sondern mit "Borland C++ Dos", wobei die Exe-dateien aber trotzdem noch von Win9x ausgeführt werden können. Wie rufe ich nun den IE aus so einem Programm heraus aus?
-
HILFEEEEEEEEEEEEEEEEEEEEEEE; ELIIIIIIIIIIIIIISEEEEEEEEEEEEEEEE?
-
Was muss ich jetzt in die Routine schreiben, damit ich eine bestimmte Homepage mit dem Standardbrowser öffnen lassen kann? ShellExecute geht nicht, und Elises andere Vorschläge taugen insofern leider auch nichts, da man den Pfad vom Browser direkt angeben muss, und der mir natürlich nicht für alle Personen bekannt ist.
-
entweder du modelst dein programm um in ein windowsprogramm (konsole unter visual studio zum bleistift ist eins..) und verwendest ShellExecute
oder du bist - wie ich mit meinem djgpp- ohne window.h, dann könntest du im allergrössten notfall noch
system("start http://www.c-plusplus.net" );
machen, dann nimmt er die aktuelle verknüpfung des compis für browser.
aber alles nur unter windows, NICHT unter dos , logo
wie es dann mit execl noch gehen könnte, daß er die verknüpfung nutzt, weiß ich nicht.
und hör auf so laut zu reden.
-
Original erstellt von elise:
**...
wie es dann mit execl noch gehen könnte, daß er die verknüpfung nutzt, weiß ich nicht.und hör auf so laut zu reden.**
Ich hab' das mal über Start->Ausführen versucht:
cmd.exe /c "start www.ix.de"
Ich könnte mir vorstellen, dass das auch mit anderen Start-Funktionen funktioniert.
btw: Die Geschichte mit 'start' zu machen ist echt clever...
-
C:\>start www.mady.de
Die Datei "www.mady.de" kann nicht gefunden werden.C:\>cmd /c "start www.mady.de"
Die Datei "www.mady.de" kann nicht gefunden werden.:p
-
Die Sache funktioniert natürlich nur in der DOS-Konsole.
cmd.exe gibt's erst ab WinNT. Bei Win9x musst Du "command.com /c" schreiben. Sorry.
EDIT: start gibt's IMHO auch erst seit WinNT ?!?
[ Dieser Beitrag wurde am 03.01.2003 um 11:34 Uhr von mady editiert. ]
-
Offenbar scheint hier nicht ganz klar zu sein, was möglich ist und was nicht:
1. Fall:
Q: Du arbeitest unter Windows, und versuchst dort das "integrierte DOS" (keinem weiter sagen ;)) also die Konsole aufzurufen und über sie eine Website aufzurufen die im Standardbrowser startet.
A: Entweder du benützt wie oben gezeigt:
#include <windows.h> ShellExecute ( NULL , "open" , "http://www.c-plusplus.net/" , NULL , NULL , SW_SHOW );
Solange Websites mit dem Standardbrowser verbunden sind, wird dieser auch aufgerufen.
Oder du benützt system:
system ( "start http://www.c-plusplus.net" );
2. Fall:
Q: Du arbeitest unter echtem DOS und versuchst von dort auf das Internet zuzugreifen.
A: Keine Antwort möglich, bevor du uns nicht sagst, wie du von dort aus auf das Internet zugreifst.
---
Wenn hier nicht bald geklärt wird um was es überhaupt geht, schließ ich hier...
MfG SideWinder
-
Das ist es ja eben. Ich habe Windows XP und besitze cmd.exe und somit auch start. Ich habe mit Start/Ausführen/cmd.exe eine Konsole geöffnet und die oben genannten Befehle eingegeben, und dann kamen die oben genannten Fehlermeldungen *gg*
-
@elise: Sorry, meine Nerven waren am Ende.
@SideWinder: Auch nochmal sorry; ich habe erst vor zwei Tagen wieder (seite Jahren!) zum ersten Mal "Borland C++ Dos" geöffnet um an einem alten Spiel einen Homepage-Link beizufügen. Da ich eben so lange nicht mehr mit gearbeitet habe, habe ich jetzt Probleme, meine Frage klar zu definieren, da ihr anscheind nicht wisst, was "Borland C++ Dos" oder "Turbo Pascal" (im Grunde das Gegenstück von Borland C++ Dos, nur für Pascal) ist?Ich tippe, dass Pascal der Variante 1 von SideWinder zutrifft, also in der Windowsumgebung mit Dos; so mache ich das auch.
system( "start http://c-plusplus.net" ); gibt sogar keinen syntaxerror zurück, also scheint es bekannt zu sein; auch die hilfe sagt folgendes als Beispiel: system( "dir" );
=> Das start kommt da nicht drin vor. Wenn ich jetzt den Code system( "start http://c-plusplus.net" ); so einfüge, wird nur leider nichts geöffnet, nur das Programm geschlossen
-
Der genaue Fehler ist: Die Anwendung wird aufgrund eines ungültigen Zugriffs geschlossen. Alle Programme werden geschlossen und der Computer wird neu gestartet *SCHEIßE*