Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.24;
Скачать: CL | DM;

Вниз

О параметрах командной строки...   Найти похожие ветки 

 
tipman ©   (2003-11-13 09:32) [0]

Здраствуйте! Такая промблема возникла - надо получить параметры командной строки запускаемого приложения. Есть ли какая API функция которая делела бы это.
Знаю что всю командную строку можно получить GetCommandLine(), а как оттуда получить параметры?


 
Palladin ©   (2003-11-13 09:35) [1]

CommandLineToArgvW()


 
tipman ©   (2003-11-13 09:42) [2]

Тогда как привести PChar к PWideChar?
lpSTR GetCommandLine()
CommandLineToArgvW(lpWSTR,...)


 
Silver Alex ©   (2003-11-13 09:52) [3]

а ParamStr(1) не подходит ?


 
Anatoly Podgoretsky ©   (2003-11-13 10:02) [4]

tipman © (13.11.03 09:32)
В каком виде


 
PVOzerski ©   (2003-11-13 10:05) [5]

2Silver Alex ©:
Уточнение: ParamStr(1) даст только 1-й параметр, а их число - от 1 от значения, возвращаемого ф-цией ParamCount (а Paramstr(0) возвращает полный путь+имя программы) - это повелось со времен TP. Кроме того, в RTL есть предопределенная var CmdLine: PChar, автоматически получающая при загрузке приложения интересующее Вас значение.


 
tipman ©   (2003-11-13 10:06) [6]

ParamStr не подходит т.к. возвращает только какой либо конкретный параметр(первый, второй...).
А чтоб сразу все - если их несколько?


 
Zacho ©   (2003-11-13 10:13) [7]


> tipman © (13.11.03 10:06) [6]

А что, прочитать их в цикле никак ?


 
tipman ©   (2003-11-13 10:22) [8]

Почему? Очень даже как. Так и делаю.
Меня интерисуют конкретно уже определённые в Delphi функции. Есть такая или нет?


 
PVOzerski ©   (2003-11-13 10:23) [9]

2[8]: Читай [5] до конца :^)


 
Silver Alex ©   (2003-11-13 10:32) [10]


> PVOzerski © (13.11.03 10:05) [5]
> 2Silver Alex ©:
> Уточнение: ParamStr(1) даст только 1-й параметр, а их число
> - от 1 от значения, возвращаемого ф-цией ParamCount (а Paramstr(0)
> возвращает полный путь+имя программы) - это повелось со
> времен TP. Кроме того, в RTL есть предопределенная var CmdLine:
> PChar, автоматически получающая при загрузке приложения
> интересующее Вас значение.


а я в курсе, не знал просто что надо так все разжевывать, "вопрос то был как достать параметр"


 
tipman ©   (2003-11-13 10:41) [11]

//
Прочитал! Видимо вопрос не доконца понятен!
var CmdLine: PChar возвращает всю командную строку вместе с путём. Мне же нужно только одни параметры. Так вот вопрос состоит в том что: Можно ли без всяких операций со строками получить эти параметры командной строки конкретной функцией в Delphi?


 
Zacho ©   (2003-11-13 10:43) [12]


> tipman © (13.11.03 10:41) [11]

А куда ты их хочешь получить ? Все равно ведь параметры по-одному обрабатывать придется.


 
Плохиш_   (2003-11-13 10:46) [13]

>tipman © (13.11.03 10:41) [11]

Может всё таки начать книжки читать?


 
PVOzerski ©   (2003-11-13 10:49) [14]

2[11]:
Ну, если ты имеешь CmdLine и знаешь длину ParamStr(0)...

2Zacho[12]: Например, передать "как есть" другому приложению :^)


 
tipman ©   (2003-11-13 10:55) [15]

Zacho © (13.11.03 10:43) [12]
Я своей прогой запускаю чужую, и все параметры моей проги должны передаться чужой. Затем уже производятся действия над чужой программой (интерфейс и т.д. - это не важно). Нафига мне обрабатывать их по одному?

Плохиш_ (13.11.03 10:46) [13]
Спасибо за совет - я попробую как нить на досуге, хотя по моему читать хелп намного инетерснее!


 
Лёша ©   (2003-11-13 10:58) [16]

пока not
> PVOzerski © (13.11.03 10:49) [14]
навоял:

procedure TForm1.FormShow(Sender: TObject);
var
s1,s2: string;
begin
s1:= CmdLine;
s2:= ParamStr(0);

form1.Caption:= Copy(s1, Length(s2)+ 4, Length(s1)- Length(s2));
end;


 
tipman ©   (2003-11-13 11:00) [17]

PVOzerski © (13.11.03 10:49) [14]

[11] ...без всяких операций со строками ...


 
Zacho ©   (2003-11-13 11:04) [18]


> tipman © (13.11.03 11:00) [17]

Неужели лень одну строку кода написать ?


 
Лёша ©   (2003-11-13 11:07) [19]


> tipman © (13.11.03 11:00) [17]
ага! подумал и сделалось...
тебе чё собственноо надо?


 
tipman ©   (2003-11-13 11:10) [20]

Zacho © (13.11.03 11:04) [18]
Дело не в этом. Вопрос состоял в том есть ли такая конкретная функция или нет! (например типа ExtractFileExt) А дискусия уже пошла конкретная!

...Ладно я понял нет её!


 
nix   (2003-11-13 11:10) [21]

function GetCommandLine: PAnsiChar;


 
tipman ©   (2003-11-13 11:14) [22]

У меня такое ощущение что ктото отвечает на вопрос не прочитав его до конца, и не просмотрев всю ветку ответов!!!!


 
Anatoly Podgoretsky ©   (2003-11-13 11:44) [23]

Ответ находится в вопросе - это GetCommandLine и соответстует уточнению tipman © (13.11.03 10:41) [11]



Страницы: 1 вся ветка

Текущий архив: 2003.11.24;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.017 c
1-78884
Maks Realov
2003-11-12 19:51
2003.11.24
Динамические массивы в Паскале - структура?


3-78794
ruslan_as
2003-11-05 13:48
2003.11.24
Как сменить в уже созданной базе InterBase пароль


3-78838
Виталя
2003-11-04 10:02
2003.11.24
Перегрузка данных из Access в Interbase


14-79182
Soft
2003-10-25 01:29
2003.11.24
Есть ли смерть после жизни?


7-79205
Demetrius
2003-09-14 10:42
2003.11.24
Mouse Scroll