Czyli jeżeli uruchomię program w delphi "przykład.exe test". To jak w kodzie programu odczytać z jakim parametrem został uruchomiony program w tym przypadku jako tekst.
Pobranie parametrów uruchomionego programu
- Rejestracja: dni
- Ostatnio: dni
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Tuchów
- Postów: 12269
Najpierw sprawdź za pomocą ParamCount czy faktycznie uruchomiono program z parametrami – jeśli tak, to wymieniona funkcja zwróci liczbę większą od 0 i możesz pobrać wartości parametrów w postaci ciągów znaków za pomocą funkcji ParamStr. Pamiętaj, że parametry indeksowane są od 1, bo ten pod indeksem 0 zawiera ścieżkę aplikacji.
Przykład:
var
ParamIndex: Integer;
begin
WriteLn('app path: "', ParamStr(0), '"');
WriteLn();
for ParamIndex := 1 to ParamCount() do
WriteLn('param ', ParamIndex, ': "', ParamStr(ParamIndex), '"');
end.
Program uruchomiony w ten sposób:
> project1.exe one two three "four five"
da na wyjściu to:
app path: "C:\DOCUME~1\FURIOU~1\USTAWI~1\Temp\project1.exe"
param 1: "one"
param 2: "two"
param 3: "three"
param 4: "four five"
- Rejestracja: dni
- Ostatnio: dni
- Postów: 1084
furious programming napisał(a):
Najpierw sprawdź za pomocą
ParamCountczy faktycznie uruchomiono program z parametrami – jeśli tak, to wymieniona funkcja zwróci liczbę większą od0i możesz pobrać wartości parametrów w postaci ciągów znaków za pomocą funkcjiParamStr. Pamiętaj, że parametry indeksowane są od1, bo ten pod indeksem0zawiera ścieżkę aplikacji.
Na to też jest rozwiązanie na GitHubie :D
https://github.com/VSoftTechnologies/VSoft.CommandLineParser
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Tuchów
- Postów: 12269
@wloochacz: na wszystko można znaleźć rozwiązania w postaci bibliotek firm trzecich, co nie oznacza, że nie warto znać absolutnych podstaw języka. :P
- Rejestracja: dni
- Ostatnio: dni
- Postów: 1084
furious programming napisał(a):
@wloochacz: na wszystko można znaleźć rozwiązania w postaci bibliotek firm trzecich,
Niestety, nie można.
co nie oznacza, że nie warto znać absolutnych podstaw języka. :P
Prawda, ale nieprawda że to podstawy języka...
Poza tym to co podałem, ogarnia inne problemy z ParamStr.
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Tuchów
- Postów: 12269
Daj spokój, nieważne czego to są podstawy – to w dalszym ciagu podstawy i tak jak każde podstawy, wypada je znać.