Zitat von
marabu:
Hi all,
die Dateigröße liefert der für den Update-Vorgang benötigte Stream sowieso:
Delphi-Quellcode:
procedure TForm1.BtnServerUpdateClick(Sender: TObject);
const
FILE_NAME = 'server.exe';
var
fs: TFileStream;
cwd, fn: TFileName;
begin
GetDir(0, cwd);
fn := IncludeTrailingPathDelimiter(cwd) + FILE_NAME;
if FileExists(fn) then
begin
fs := TFileStream.Create(fn, fmOpenRead or fmShareDenyWrite);
ShowMessage(IntToStr(fs.Size));
// ClientSocket1.Socket.SendText('ServerUpdateSize:' + IntToStr(fs.Size));
// ClientSocket1.Socket.SendStream(fs);
// Log.Lines.Add('(' + TimeToStr(Now) + ') System: Das Update wurde übertragen und wird nun installiert.');
end else
Log.Lines.Add('(' + TimeToStr(Now) + ') System: Datei "' + FILE_NAME + '" nicht gefunden.');
end;
Getippt und nicht getestet.
Grüße vom marabu
Wäre natürlich eine feine Sache, wenn man den FileStream noch freigeben würde...