Selvom det var meget mere almindeligt i DOS-dage, lader moderne operativsystemer dig også køre kommandolinjeparametre mod et program, så du kan specificere, hvad applikationen skal gøre.
Det samme gælder for din Delphi ansøgning, hvad enten det drejer sig om en konsol applikation eller en med en GUI. Du kan videregive en parameter fra Kommandoprompt i Windows eller fra udviklingsmiljøet i Delphi, under Kør> Parametre menuindstilling.
Til denne tutorial bruger vi parameterdialogboksen til at videresende kommandolinjeargumenter til et program, så det vil være som om vi kører det fra Windows Stifinder.
ParamCount og ParamStr ()
Det ParamCount - funktion returnerer antallet af parametre, der er sendt til programmet på kommandolinjen, og ParamStr returnerer en specificeret parameter fra kommandolinjen.
Det OnActivate begivenhedshåndterer af hovedformularen er normalt, hvor parametrene er tilgængelige. Når applikationen kører, er det der, de kan hentes.
Bemærk, at i et program CmdLine variabel indeholder en streng med kommandolinjeargumenter specificeret, da applikationen blev startet. Du kan bruge
CmdLine for at få adgang til hele parameterstrengen, der er sendt til en applikation.Prøveansøgning
Start et nyt projekt, og placér en Knap komponent på Form. I knapens OnClick event handler, skriv følgende kode:
procedure TForm1.Button1Click (Afsender: TObject);
begynde
ShowMessage (ParamStr (0));
ende;
Når du kører programmet og klikker på knappen, vises der en meddelelsesboks med stien og filnavnet på det eksekverende program. Det kan du se ParamStr "fungerer", selvom du ikke har givet nogen parametre til applikationen; Dette skyldes, at matrixværdien 0 gemmer filnavnet på det eksekverbare program, inklusive stiinformation.
Vælge Parametre fra Løb menu, og tilføj derefter Delphi-programmering til rullelisten.
Bemærk: Husk, at når du videregiver parametre til din applikation, skal du adskille dem med mellemrum eller faner. Brug dobbeltcitater til at indpakke flere ord som en parameter, som når du bruger lange filnavne, der indeholder mellemrum.
Det næste trin er at gå gennem parametrene ved hjælp af ParamCount () for at få værdien af parametrene ved hjælp af ParamStr (i).
Skift knapens OnClick-begivenhedshåndterer til dette:
procedure TForm1.Button1Click (Afsender: TObject);
Var
j: heltal;
beginfor j: = 1 til ParamCount gøre
ShowMessage (ParamStr (j));
ende;
Når du kører programmet og klikker på knappen, vises der en meddelelse, der lyder "Delphi" (første parameter) og "Programmering" (anden parameter).