Steck doch den wesentlichen Code aus dem FormActivate in eine eigene Methode und rufe die dann wahlweise im FormActivate oder an beliebiger anderer Stelle auf.
Delphi-Quellcode:
program hcFileTransfer;
uses
Forms,
ftpprogressf in 'ftpprogressf.pas' {FormFtpprogressf},
ftpf in 'ftpf.pas' {formFTP},
ftpdialogf in 'ftpdialogf.pas' {FormFtpdialog};
begin
Application.Initialize;
Application.ShowMainForm := ParamCount > 1;
Application.Title := 'hcFTP';
Application.CreateForm(TformFTP, formFTP);
if Application.ShowMainForm then begin
Application.Run;
end else begin
// Hier die "neue" Methode aufrufen,
formFTP.DoIt;
end;
end.
Delphi-Quellcode:
procedure TformFTP.DoIt;
begin
if ParamCount > 0 then
begin
if lowercase(ParamStr(1)) = '-up' then
begin
parameterUpload; //Lade datei Hoch
end
else if lowercase(ParamStr(1)) = '-down' then
begin
parameterDownload; //Lade date Herunter
end
else
begin
showmessage('Ungültige Parameter!');
end;
Close;
end;
end;
procedure TformFTP.FormActivate(Sender: TObject);
begin
DoIt;
end;
Ungetestet hingedaddelt.