Schau dir mal Luckie's Bookmark-Checker an, der Prüft ja, ob eine Seite(Datei) existiert - den Quellcode liefert er ja meistens mit.
Eigentlich zeigt der "Datei gefunden..." erst an, wenn die Datei vorhanden ist (kurz vorm Download).
Kannst dir ja mal die restlichen Ereignisse anzeigen lassen und dann am Besten mal, zur besseren Übersicht, nicht in ein Label [Label1.Caption := '...';], sondern in ein Memo schreiben [Memo1.Lines.Add('..');].
Bei dir ist ja eine StatusCallback-Procedure, so ähnlich wie diese vorhanden,
Delphi-Quellcode:
Function cDownloadStatusCallback.OnProgress(ulProgress, ulProgressMax, ulStatusCode: ULong; szStatusText: LPCWStr): HResult; StdCall;
Begin
Case ulStatusCode of
BINDSTATUS_FINDINGRESOURCE {1}: cbUpdate2('suchen', '0', 0);
BINDSTATUS_CONNECTING {2}: cbUpdate2('verbinden', '0', 0);
BINDSTATUS_BEGINDOWNLOADDATA {4}: cbUpdate2('starten', '0', 0);
BINDSTATUS_DOWNLOADINGDATA {5}: cbUpdate2('Download', Trim(Format('%9.0n', [ulProgress / 1])), MulDiv(ulProgress, 100, ulProgressMax));
BINDSTATUS_ENDDOWNLOADDATA {6}: cbUpdate2('ende', Trim(Format('%9.0n', [ulProgressMax / 1])), 100);
BINDSTATUS_CACHEFILENAMEAVAILABLE: CacheDatei := String(szStatusText);
End;
If False{UserCancel} Then Result := E_ABORT Else Result := S_OK;
End;
welche z.B. mit einigen der folgenden Ereignisse erweitert werden kann (die Konstantennamen sagen ja, worum es geht):
Delphi-Quellcode:
BINDSTATUS_FINDINGRESOURCE
BINDSTATUS_CONNECTING
BINDSTATUS_REDIRECTING
BINDSTATUS_BEGINDOWNLOADDATA
BINDSTATUS_DOWNLOADINGDATA
BINDSTATUS_ENDDOWNLOADDATA
BINDSTATUS_BEGINDOWNLOADCOMPONENTS
BINDSTATUS_INSTALLINGCOMPONENTS
BINDSTATUS_ENDDOWNLOADCOMPONENTS
BINDSTATUS_USINGCACHEDCOPY
BINDSTATUS_SENDINGREQUEST
BINDSTATUS_CLASSIDAVAILABLE
BINDSTATUS_MIMETYPEAVAILABLE
BINDSTATUS_CACHEFILENAMEAVAILABLE
BINDSTATUS_BEGINSYNCOPERATION
BINDSTATUS_ENDSYNCOPERATION
BINDSTATUS_BEGINUPLOADDATA
BINDSTATUS_UPLOADINGDATA
BINDSTATUS_ENDUPLOADDATA
BINDSTATUS_PROTOCOLCLASSID
BINDSTATUS_ENCODING
BINDSTATUS_VERIFIEDMIMETYPEAVAILABLE
BINDSTATUS_CLASSINSTALLLOCATION
BINDSTATUS_DECODING
BINDSTATUS_LOADINGMIMEHANDLER
BINDSTATUS_CONTENTDISPOSITIONATTACH
BINDSTATUS_FILTERREPORTMIMETYPE
BINDSTATUS_CLSIDCANINSTANTIATE
BINDSTATUS_IUNKNOWNAVAILABLE
BINDSTATUS_DIRECTBIND
BINDSTATUS_RAWMIMETYPE
BINDSTATUS_PROXYDETECTING
BINDSTATUS_ACCEPTRANGES
BINDSTATUS_COOKIE_SENT
BINDSTATUS_COMPACT_POLICY_RECEIVED
BINDSTATUS_COOKIE_SUPPRESSED
BINDSTATUS_COOKIE_STATE_UNKNOWN
BINDSTATUS_COOKIE_STATE_ACCEPT
BINDSTATUS_COOKIE_STATE_REJECT
BINDSTATUS_COOKIE_STATE_PROMPT
BINDSTATUS_COOKIE_STATE_LEASH
BINDSTATUS_COOKIE_STATE_DOWNGRADE
BINDSTATUS_POLICY_HREF
BINDSTATUS_P3P_HEADER
BINDSTATUS_SESSION_COOKIE_RECEIVED
BINDSTATUS_PERSISTENT_COOKIE_RECEIVED
BINDSTATUS_SESSION_COOKIES_ALLOWED