Gast
#523872
Hallo, Leute. Wie kann ich in c++ mittels Internet Adresse den Download auf Knopfdruck starten?
|
Anzeige
|
Downloaden unter C++
Gast
#523872
Hallo, Leute. Wie kann ich in c++ mittels Internet Adresse den Download auf Knopfdruck starten?
Gast
#523910
Einfach: Mit der Maus. Mühsamer: Mit Tab und Enter.
Gast
#523917
Nein ich will dass wenn ich auf den Button "Downloaden"; Klicke der Download startet dessen Adresse den ich in der Variable "Adresse" gespeicht habe.
Gast
#523927
Schau mal in den MAN-pages nach "socket".
Gast
#523931
Ich fonde voll viel: Socket-Server, Socket-Stream, Socket-Schnittstelle, Socket-Kommunikation, ...
Gast
#523935
Möglichkeit 1 - Du fuxt dich in die Sockets-Programmierung ein und programmierst dann ein Clientprogramm. Möglichkeit 2 - Du suchst dir eine fertige Klasse für dein Vorhaben und schreibst eine Anwendung drum herum. Möglichkeit 3 - Du startest aus dem C++ Programm eine Shell oder ein Shellkommando und rufst damit ein Tool für den Transfer wie z.B. wget auf. Personal Firewalls reagieren allerdings komisch auf diesen Weg.
Gast
#523936
Möglichkeit 3 hört sich am besten an wie geht dass?
Gast
#523950
Ich hatte schon überlegt ob ich mit nem SaveDialog einfach als Dateiort die Adresse angeben habs aber noch net hinbekommen Vorraussetzung 1: Du lernst wenigstens ein bischen C++. system( const char* command); startet das im C-String command enthaltene Kommando in einer eigenen Shell. Wie Stefan schon sagte: Besorg dir zunächst mal das Tool wget (danach googeln). Ach was solls: http://users.ugent.be/~bpuype/wget/ Das ist ein Commandline Werkzeug, dass dir eine Datei besorgt. Spiel mal ein bischen in einer DOS Box damit herum um ein Gefühl dafür zu kriegen, wie das Teil funktioniert. Danach rufst du es aus einem C++ Programm heraus auf, indem du einen String zusammenbastelst, der genau diesen Aufruf enthält. Diesen String übergibst du an system(). Diese Funktion startet eine DOS Box und führt den übergebenen String genauso als Kommando aus, als ob du ihn selbst über die Tastatur eingegeben hättest.
Gast
#523956
Kann C++ Hab mir dass Buch C++ für Einsteiger und dass Buch C++ für Kids Durchgelesen. Leider wurden genau solche Sachen nie erklärt. Benutze übrigens C++ Builder 6 falls dass von Beduetung sein sollte.
Gast
#523959
Habe mir wget runtergeladen. Scheint wirklich ein tolles Programm zu sein. Aber wie ich aus meinem C++ Builder Prog ein anderes Programm starten kann übersteigt mein wissen leider ..wieder.
Gast
#523981
Wie gesagt...mit
system("wget");
aufrufen. Alternativ auch execve.
Robin T. wrote: > Habe mir wget runtergeladen. Scheint wirklich ein tolles Programm zu > sein. Aber wie ich aus meinem C++ Builder Prog ein anderes Programm > starten kann übersteigt mein wissen leider ..wieder. sag ich doch: Du musst dir einen String zusammenbauen, der das auszuführende Kommando enthält. Wenn du also in der DOS-Box machst > wget http://meinserver.irgendwo.com/index.html um die Datei index.html vom Server http://meinserver.irgendwo.com zu holen, dann musst du im Programm ausführen: system( "wget http://meinserver.irgendwo.com/index.html" ); und natürlich kannst du den String auch zur Laufzeit aus Einzelteilen zusammenbauen. Entweder mit std::string oder mit C-Strings: char command[255]; strcpy( command, "wget " ); strcat( command, "http://meinserver.irgendwo.com/index.html" ); system( command );
Gast
#523988
Also ich habe es geschafft dass er von meinen C++ Prog aus wget startet
und downloaet allerdings kann ich bei: system("wget"); keine variable
angeben aus der er die adresse beziehern soll. Kann nur: system("wget
http://www.....de); angeben kann ich dass ändern?
Gast
#524001
Statt strcat( command, "http://meinserver.irgendwo.com/index.html" ); schreibst du halt: char *url = "http://www.mikrocontroller.net"; strcat(command,url);
Gast
#524283
Besser wären IMHO die folgenden Möglichkeiten: 1) Wenn du auf system() bestehst, schreib ein Shellskript (bzw. eine batch-datei unter Windows). Deinen C++-Kenntnissen nach zu urteilen wirst du damit sehr viel schneller zum gewünschten Ergebnis kommen. 2) Wenn du auf C++ bestehst, schau dir mal libcurl an. Diese bietet dir ein relativ einfaches Interface, um Dateien korrekt herunterzuladen. libcurl ist außerdem sehr bekannt, du hast also eine große Chance bei Problemen Hilfe zu bekommen: http://curl.haxx.se/libcurl/ Im übrigen scheinst du eher C und nicht C++ zu programmieren, wenn du strcat und Konsorten anstatt std::string benutzt. Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|