Thema: Delphi download+ %anzeige

Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.202 Beiträge
 
Delphi 12 Athens
 
#10

Re: download+ %anzeige

  Alt 23. Mär 2004, 19:07
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
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat