Einzelnen Beitrag anzeigen

nahpets
(Gast)

n/a Beiträge
 
#5

AW: VCL-Anwendung starten und Funktion ausführen

  Alt 15. Mär 2017, 13:29
Im FormCreate einfach die Funktion aufrufen, die automatisch gestartet werden soll?

Ein VCL-Programm von mir, das wahlweise als 'normale' Anwendung oder als Batchprogramm laufen soll, macht das so:
Delphi-Quellcode:
begin
  Application.Initialize;
  Application.CreateForm(TfmDPMain, fmDPMain);
  Application.CreateForm(TfmUrlListe, fmUrlListe);
  Application.CreateForm(TfmAbout, fmAbout);
  Application.CreateForm(TdmSynHighlighter, dmSynHighlighter);
  Application.CreateForm(TfmKonfigurationAuswaehlen, fmKonfigurationAuswaehlen);
  if fmAbout.bMD5Checked then begin
    fmDPMain.acl.CreateMenu;
    if ParamCount = 1 then begin
      Try
        fmDPMain.Show;
        fmDPMain.edBatchVerarbeitungIniFile.Text := ParamStr(1);
        fmDPMain.acIniDateiLadenExecute(Nil);
        fmDPMain.pc.ActivePageIndex := 2;
        fmDPMain.acBatchAusfuehren.Tag := 1;
        fmDPMain.acBatchAusfuehrenExecute(Nil);
        fmDPMain.acSchliessenExecute(nil);
      except
        on e : Exception do begin
          ShowMessage(e.Message);
        end;
      end;
      fmUrlListe.tbUrlListe.SavePersistent;
      fmUrlListe.tbUrlListe.Close;
    end else begin
      Application.Run;
    end;
  end;
end.
Oder kurz und knapp:
Statt Application.Run;
Delphi-Quellcode:
Form1.Show;
DieAuszufuehrendeRoutine;
Form1.Close;
  Mit Zitat antworten Zitat