подскажите плз как это организовать, чтобы работало подобное: <ИМЯ.ПРОГИ> ++<ключи>
желательно на C/C++/Pascal...
[Ответ]
wint 12:02 29.07.2005
подскажите плз... а то хатю к проге обзор клавишь сделать ключом /?
[Ответ]
logged in 12:32 29.07.2005
в делфи в модуле system.pas есть функция paramstr(index: integer)
где index - порядковый номер параметра командной строки. функция возвращает тебе этот параметр в виде строки. первый параметр после имени исполняемого файла имеет номер 1. если параметр состоит из нескольких слов разделенных пробелами то его (параметр) надо заключить в двойные кавычки когда пишешь его в командной строке.
далее при старте програмки пишешь типа:
if paramstr(1)='/?' then begin
//тут выводишь свой хелп
end;
[Ответ]
wint 00:08 30.07.2005
буду благодарен если ты выкрутишь тело функции из модуля и кинешь её сюда 8)...
[Ответ]
logged in 15:10 30.07.2005
function ParamStr(Index: Integer): string;
{$IFDEF MSWINDOWS}
var
P: PChar;
Buffer: array[0..260] of Char;
begin
Result := '';
if Index = 0 then
SetString(Result, Buffer, GetModuleFileName(0, Buffer, SizeOf(Buffer)))
else
begin
P := GetCommandLine;
while True do
begin
P := GetParamStr(P, Result);
if (Index = 0) or (Result = '') then Break;
Dec(Index);
end;
end;
{$ENDIF}
{$IFDEF LINUX}
begin
if Index < ArgCount then
Result := PCharArray(ArgValues^)[Index]
else
Result := '';
{$ENDIF}
end;
[Ответ]
wint 01:38 31.07.2005
мдя... толку мало... все функции распиханы по модулям, которых в паскале нету, а как писать свой обрабочик я так и непнял... 8(
[Ответ]
Коммандную строку получать апишной функцией GetCommandLine.
Есть также POSIX совместимая функция стандартная getopt.
Когда то писал аналог простенького bash под Windows. Сурсы getopt брал из сурсов FreeBSD, под виндоуз портанулись без особых проблем.
[Ответ]
wint 09:05 01.08.2005
Сообщение от :
Вообще гугол может помочь, он не помогает только ленивым.