Habe ein Problem mit Threads und InternetOpenUrl

Ascharan

Grünschnabel
Hab ein Programm geschrieben das mit hilfe von InternetOpenUrl eine datei aus dem internet herunterläd dazu hab ich eine passende ProgressBar nur bleibt sie bei etwa ein viertel des Downloads Hängen nach beendigung des Downloads Geht die Progressbar auf 100% . Nun Mein Problem hab gelesen das das problem mit hilfe von threads gelösst werden kann nur hab ich keine ahnung von threads .

http://www.asajia.de/index.php?section=si1 hier die function die ich verwende

thx im voraus :confused:
 
Zum Thema Threads schaue dir mal in der MSDN die Beschreibungen zu _beginthread und _beginthreadex an. Wenn du da noch keine Erfahrungen hast, wirst du wohl etwas Einarbeitungszeit investieren müssen.
Ansonsten sollte sich dein Problem möglicherweise auch ohne Threads lösen lassen, indem du innerhalb der do...while - Schleife die anstehenden Windows-Nachrichten verarbeitest. Dazu muss folgender Codeabschnitt irgendwo in der Schleife mit einfügt werden:
C++:
MSG msg;
while( ::PeekMessage(&msg, NULL, 0, 0, PM_NOREMOVE ) )
{   
    if( ::GetMessage(&msg, NULL, 0, 0)) 
    {
      ::TranslateMessage(&msg);
      ::DispatchMessage(&msg);
    }
    else
    {
        break;
    }
}
Zum Herunterladen zum von Dateien gibt's übrigens eine spezielle Funktion: URLDownloadToFile(). Da man man weniger Arbeit mit :)

Gruß
MCoder
 
Danke für die schnelle antwort nur benutze ich keine CRT oder wie dies gleich nochmal heisst, und URLDownloadToFile lässt sich unter pur winapi nur schwer eine progressbar realisieren so zumindest (vermutung) hab bisher auch noch nix dazu gefunden
 
Danke für die schnelle antwort nur benutze ich keine CRT
Natürlich nicht, habe ich auch nicht angenommen. Der von mir gepostete Code ist pur Winapi, oder worauf bezog sich diese Anmerkung?

URLDownloadToFile lässt sich unter pur winapi nur schwer eine progressbar
Das geht über die Callback-Funktion, die man da (optional) zuweisen kann. Hab mich allerdings selber auch noch nicht genauer damit befasst.

Gruß
MCoder
 
Dein Code Sieht Klassen basiert aus und das mit URLDownloadToFile war darauf bezogen mit nicht winapi den die Callback ist mir zwar bekannt hab sie aber bisher aber nur inn der MFC Gesehen deswegen verzei mein irtum
 
Würde gern Klassenbasierte Codes Verwenden aber hab leider keine erfahrung und hab auch kein ders mir zeigt in den meisten foren wenn man da ne frage stellt gibt es die antwort es gibt genug tutorials im netz ?hab da bloss noch kein gut beschriebenes gesehen oder den hinweis haste heut scho Gegooglet oder so:confused:
 

Neue Beiträge

Zurück