![]() |
Iso Datei über Lan downloaden - Programm?
Hallo zusammen,
hab per Suche nix in der art gefunden, was mich weiter bringen könnte, sorry wenn ich eine ähnliche Frage übersehen hab. Gleich mal im voraus, ich hab Null Ahnung vom programmieren mit Delphi. Wollte euch fragen ob folgendes Programm schwierig wäre zu erstellen: Ich möchte das auf klick von „Download.exe“ eine Datei mit immer gleich bleibendem Pfad und Namen (z.B. ![]() Schwierig sowas zu machen? Wenns nicht arg zu viel Arbeit macht wäre es auch net wenn ihr mir ein klein wenig mit dem code helfen könntet. Also wie das ganze aufgebaut wird. Danke schon mal im voraus. Gruß Diedangel |
Re: Iso Datei über Lan downloaden - Programm?
Sollte realtiv einfach mit
![]() |
Re: Iso Datei über Lan downloaden - Programm?
Hi,
danke für die schnelle Antwort. Wie gesagt bin ich totaler Neuling in Delphi. Hab mir das Programm auch noch nicht angeschaut und werd mir heut erst Abend die Testversion, welche es auf borland-delphi gibt, downloaden. Beantwortet sich da die Frage von selbst --> Wo welcher Quellcode hinkommt <-- oder braucht man doch ein wenig mehr Erfahrung? Danke Gruß Diedangel |
Re: Iso Datei über Lan downloaden - Programm?
|
Re: Iso Datei über Lan downloaden - Programm?
hey super, danke für den Link.
Das hilft mir auf alle fälle weiter. gruß Diedangel |
Re: Iso Datei über Lan downloaden - Programm?
Zitat:
ich nochmal. Von wegen einfach...wenn ich das nun so mache wie in diesem Beitrag beschrieben habe ich lauter ERRORS und besonders viele im Implementation-Teil :evil: Was mach ich falsch? Bitte um Hilfe :hello: |
Re: Iso Datei über Lan downloaden - Programm?
Wie lauten denn die Fehler genau ? Zeig am besten mal deinen Code.
|
Re: Iso Datei über Lan downloaden - Programm?
Liste der Anhänge anzeigen (Anzahl: 1)
Delphi-Quellcode:
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, UrlMon, ActiveX; type cDownloadStatusCallback = class(TObject,IUnknown,IBindStatusCallback) private function QueryInterface(const IID: TGUID; out Obj): HResult; stdcall; function _AddRef: Integer; stdcall; function _Release: Integer; stdcall; function OnStartBinding(dwReserved: DWORD; pib: IBinding): HResult; stdcall; function GetPriority(out nPriority): HResult; stdcall; function OnLowResource(reserved: DWORD): HResult; stdcall; function OnProgress(ulProgress, ulProgressMax, ulStatusCode: ULONG; szStatusText: LPCWSTR): HResult; stdcall; function OnStopBinding(hresult: HResult; szError: LPCWSTR): HResult; stdcall; function GetBindInfo(out grfBINDF: DWORD; var bindinfo: TBindInfo): HResult; stdcall; function OnDataAvailable(grfBSCF: DWORD; dwSize: DWORD; formatetc: PFormatEtc; stgmed: PStgMedium): HResult; stdcall; function OnObjectAvailable(const iid: TGUID; punk: IUnknown): HResult; stdcall; public { Public declarations } end; var Form1: TForm1; usercancel: Boolean = False; implementation function cDownloadStatusCallback._AddRef: Integer; begin Result := 0; end; function cDownloadStatusCallback._Release: Integer; begin Result := 0; end; function cDownloadStatusCallback.QueryInterface(const IID: TGUID; out Obj): HResult; begin if(GetInterface(IID,Obj)) then begin Result := 0 end else begin Result := E_NOINTERFACE; end; end; function cDownloadStatusCallback.OnStartBinding(dwReserved: DWORD; pib: IBinding): HResult; begin Result := S_OK; end; function cDownloadStatusCallback.GetPriority(out nPriority): HResult; begin Result := S_OK; end; function cDownloadStatusCallback.OnLowResource(reserved: DWORD): HResult; begin Result := S_OK; end; function cDownloadStatusCallback.OnStopBinding(hresult: HResult; szError: LPCWSTR): HResult; stdcall; begin Result := S_OK; end; function cDownloadStatusCallback.GetBindInfo(out grfBINDF: DWORD; var bindinfo: TBindInfo): HResult; stdcall; begin Result := S_OK; end; function cDownloadStatusCallback.OnDataAvailable(grfBSCF: DWORD; dwSize: DWORD; formatetc: PFormatEtc; stgmed: PStgMedium): HResult; begin Result := S_OK; end; function cDownloadStatusCallback.OnObjectAvailable(const iid: TGUID; punk: IUnknown): HResult; stdcall; begin Result := S_OK; end; function cDownloadStatusCallback.OnProgress(ulProgress, ulProgressMax, ulStatusCode: ULONG; szStatusText: LPCWSTR): HResult; begin case ulStatusCode of BINDSTATUS_FINDINGRESOURCE: begin Form1.Label1.Caption := 'Datei wurde gefunden...'; if (usercancel) then begin Result := E_ABORT; exit; end; end; BINDSTATUS_CONNECTING: begin Form1.Label1.Caption := 'Es wird verbunden...'; if (usercancel) then begin Result := E_ABORT; exit; end; end; BINDSTATUS_BEGINDOWNLOADDATA: begin Form1.Gauge1.Progress := 0; Form1.Label1.Caption := 'Der Download wurde gestartet...'; if (UserCancel) then begin Result := E_ABORT; exit; end; end; BINDSTATUS_DOWNLOADINGDATA: begin Form1.Gauge1.Progress := MulDiv(ulProgress,100,ulProgressMax); Form1.Label1.Caption := 'Datei wird heruntergeladen...'; if (UserCancel) then begin Result := E_ABORT; exit; end; end; BINDSTATUS_ENDDOWNLOADDATA: begin Form1.Label1.Caption := 'Download wurd beendet...'; end; end; Application.ProcessMessages; Result := S_OK; end; procedure TForm1.Button1Click(Sender: TObject); var cDownStatus : cDownloadStatusCallback; begin cDownStatus := cDownloadStatusCallBack.Create; try URLDownloadToFIle(nil,'http://www.google.de/index.html', 'C:\index.html',0,CDownStatus); finally cDownStatus.Free; end; end; end. |
Re: Iso Datei über Lan downloaden - Programm?
tu mal dein form um ein label erweitern und tu einen button hinzu.
|
Re: Iso Datei über Lan downloaden - Programm?
:roll: ähm wär net wenn erklären könntest wo ich das mach...also Button weiß ich...aber das mit der "Form" :?:
und der Button läßt sich ja zuvor nicht erstellen sorry bin wie oben schon erwähnt total neu im Delphi |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:53 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz