Datei aus dem Internet downloaden - FAQ Beitrag funzt nicht?



  • Hallo Zusammen

    Ich suche schon länger nach einer Möglichkeit, Dateien mitels MFC aus dem Internet herunterladen und danach per ShellExecute ausführen zu können.

    Allerdings wurde ich nicht fündig, weil ich etwas suche dass nicht vom IE abhänig ist. Sprich URLFileToDownload ist nichts und CHTTPFile usw. halfen mir auch nicht weiter. Ich habe jegliche Beispiele auf www.codeproject.com und www.codeguru.com runtergeladen.. sobald ich die mit VC++ 2008 öffne, kommt die Meldung ob ich alles kompilieren will auf die aktuelle VC++ Distribution weil es eine alte V6 Projekt ist. <Nun gemacht und getan..

    Beim kompilieren erhalte ich tausende von Fehlern.. zb. const int oder int TOUCH ... diese Funktion wird von VC++ seit geraumer Zeit nicht mehr unterstüzt.. etc.. !

    Also griff ich auf die FAQ-Funktion zurück "Datei aus dem Internet Downloaden (mit Statusanzeige)" und kam aiuch nicht weiter.. wo muss ich diesen Thread und wie erstellen?? In einer Dialoganwendung möchte ich das anwenden damit die datei heruntergeladen und gespeichert wird. Muss ich dann da noch einen zusätzlichen DLG Anlegen für die Statusanzeige usw??
    Wäre noch toll wenn dieser FAQ Beitrag noch erklärt wird wie wo was ??

    Grüsse

    Wolf



  • Tut mir leid für dich, aber bei mir funktioniert alles nach Konvertierung in VC2008 SP1 Prof.
    Basis war urlfile.zip aus codeproject und bei Konvertierung "Yes to all" oder so. Da liegt der Fehler wohl bei dir und nicht in der FAQ!

    Hier das Ergebnis:

    ------ Build started: Project: urlfile, Configuration: Debug Win32 ------
    Compiling...
    StdAfx.cpp
    WINVER not defined. Defaulting to 0x0600 (Windows Vista)
    Compiling...
    urlfile.cpp
    c:\programmieren\codeproject\urlfile\urlfile.cpp(52) : warning C4996: 'CWinApp::Enable3dControlsStatic': CWinApp::Enable3dControlsStatic is no longer needed. You should remove this call.
    c:\programme\microsoft visual studio 9.0\vc\atlmfc\include\afxwin.h(4821) : see declaration of 'CWinApp::Enable3dControlsStatic'
    urlfileDlg.cpp
    Generating Code...
    Linking...
    Embedding manifest...
    Build log was saved at "file://C:\Codeproject\Urlfile\Debug\BuildLog.htm"
    urlfile - 0 error(s), 1 warning(s)
    ========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========



  • Dieser Teil des Beitrages hat sich erledigt.. war nur langer error-code.. 🙂



  • Also bei mir gibt es kein "hauptdlg.cpp" sondern nur

    resource.h
    StdAfx.cpp
    StdAfx.h
    urlfile.clw
    urlfile.cpp
    urlfile.dsp
    urlfile.dsw
    urlfile.h
    urlfile.rc
    urlfileDlg.cpp
    urlfileDlg.h

    Du arbeitest aber schon mit VC2008, dein Quote suggeriert 2010.



  • Wutz schrieb:

    Also bei mir gibt es kein "hauptdlg.cpp" sondern nur
    ...

    Du arbeitest aber schon mit VC2008, dein Quote suggeriert 2010.

    Die Hauptdlg.cpp ist ja das andere Dialogfenster von meinem Programm. 🙂 Ja, ich arbeite mit VC2008. Wie kommst denn Du auf 2010? Das ist lediglich ein Ordner der ich so nannte aufgrund des aktuellen Jahres 2010 und K:/ Ist der LAufwerkbuchstabe.. 🙂

    Funktioniert nun alles. Bis auf eine Kleinigkeit.. Wenn ich den Download im Laufwerk C:\\ speichern will schmiert das Programm ab. Grund: Acces Denied aufgrund der Benutzerrechte unter Vista usw.

    Dann zweitens: Wie kann ich nach dem erfolgreichem Beenden des Downloads gleichzeitig die heruntergeladene Datei ausführen und das aktuelle Programm beenden?? Habe es schon mit CYourDlg::PostMessage versucht, aber kommt immer der Fehler ist keine Instanz von Cwnd usw.

    Und wenn der User auf Abbrechen klickt, dass einfach CYourDlg geschlossen wird aber das Programm weiterläuft.. Bisher löste ich es immer mit PostMessage, hier aber im YourDlg ist das irgendwie nicht möglich ??

    lg
    Wolf



  • Also können wir zusammenfassen:

    deine gewählte Beitragsüberschrift ist falsch,
    die FAQ ist OK,
    der in der FAQ genannte Code ist OK,
    die aufgetretenen Fehler haben allesamt ihre Ursache in deinem Codeanteil.


Anmelden zum Antworten