![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| Sniper |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 511 Регистрация: 8.5.2002 Репутация: нет Всего: 2 |
Вот допустим такой параметр yyyy.exe -ggggg
Так вот как мне запустить прогу с введённым параметром...??? И ещё как поступить если параметров несколько...??? Где-то слышал, что надо paramcount вроде бы использовать!!!!!! -------------------- "Я испытываю отвращение к системе, разработаннной для "пользователя", если в слове "пользователь" закодировано уничижительное значение "тупой и примитивный". Кен Томпсон, создатель Unix |
|||
|
||||
| Vit |
|
|||
![]() Vitaly Nevzorov ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 10964 Регистрация: 25.3.2002 Где: Chicago Репутация: 48 Всего: 207 |
Paramcount - показывает сколько у тебя параметров передано
Paramstr(0) - это имя с путем твоей программы Paramstr(1) - имя первого параметра Paramstr(2) - имя второго параметра и т.д. Если ты запускаешь: с:\myprog.exe /a -b22 c:\dev то Paramcount будет равен 3 Paramstr(0) будет равен с:\myprog.exe Paramstr(1) будет равен /a Paramstr(2) будет равен -b22 Paramstr(3) будет равен c:\dev -------------------- With the best wishes, Vit I have done so much with so little for so long that I am now qualified to do anything with nothing Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru |
|||
|
||||
| Baa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2639 Регистрация: 12.4.2002 Где: Москва Репутация: нет Всего: 12 |
Наверно ты про это...Массив Params заполняеться параметрами, с которыми была вызвана программа...Код написан теоретически
var Params : array [0..$FF] of String; I : Byte; begin for I := 0 to ParamCount do Params [I] := ParamStr(I); -------------------- "Duty is everything; the greatest of joys, the deepest of sorrows" Aribeth de Tylmarande |
|||
|
||||
| Sniper |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 511 Регистрация: 8.5.2002 Репутация: нет Всего: 2 |
Хорошо, а как тогда запустить прогу с параметрами...
Как я понял что-то надо написать здесь?? program Project2; uses Forms, Unit1 in 'Unit1.pas' {Form1}; {$R *.RES} begin Application.Initialize; Application.CreateForm(TForm1, Form1); Application.Run; end. Как мне допустим запустить например: qqq.exe -b22 -------------------- "Я испытываю отвращение к системе, разработаннной для "пользователя", если в слове "пользователь" закодировано уничижительное значение "тупой и примитивный". Кен Томпсон, создатель Unix |
|||
|
||||
| TwoK |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 259 Регистрация: 25.3.2002 Репутация: нет Всего: нет |
Хм, ты имеешь в виду свою прогу, которую ты создаешь? в меню "Run" есть "Parameters", там в комбобоксе прописываешь все параметры, которые душе угодно. Твоя прога будет запускаться с этими параметрами. Соответственно, когда эта строчка пустая, параметров командной строки не будет.
А если не свою, а чужую - тут тебе помогут CreateProcess, WinExec, ShellExecute, ... Удачи. -------------------- Говорят, что население в стране все меньше и меньше. А народу по утрам в метро почему-то все больше и больше... |
|||
|
||||
| Sniper |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 511 Регистрация: 8.5.2002 Репутация: нет Всего: 2 |
Вот допустим Counter-Strike запускается так
hl.exe -console -game cstrike можно так hl.exe - console Короче, что бы пользователь их мог вводить! -------------------- "Я испытываю отвращение к системе, разработаннной для "пользователя", если в слове "пользователь" закодировано уничижительное значение "тупой и примитивный". Кен Томпсон, создатель Unix |
|||
|
||||
| Vit |
|
|||
![]() Vitaly Nevzorov ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 10964 Регистрация: 25.3.2002 Где: Chicago Репутация: 48 Всего: 207 |
ShellExecute(Handle, 'Open', YourProgramName, yourparameters, yourprogrampath, sw_restore)
Например для твоего случая: ShellExecute(Handle, 'Open', 'hl.exe', '-console -game cstrike', 'c:\games\contrstrike', sw_restore); -------------------- With the best wishes, Vit I have done so much with so little for so long that I am now qualified to do anything with nothing Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru |
|||
|
||||
| Sniper |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 511 Регистрация: 8.5.2002 Репутация: нет Всего: 2 |
А как пользователь их будет вводить?
-------------------- "Я испытываю отвращение к системе, разработаннной для "пользователя", если в слове "пользователь" закодировано уничижительное значение "тупой и примитивный". Кен Томпсон, создатель Unix |
|||
|
||||
| TwoK |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 259 Регистрация: 25.3.2002 Репутация: нет Всего: нет |
Хм, ну, наверное, с клавиатуры...
Sorry, но вопрос "как" ставит в тупик -------------------- Говорят, что население в стране все меньше и меньше. А народу по утрам в метро почему-то все больше и больше... |
|||
|
||||
| Sniper |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 511 Регистрация: 8.5.2002 Репутация: нет Всего: 2 |
Не.... ну если в обработчике "баттны" написать сею строчку... то запустится CS с параметрами -console -game cstrike....... но я ведь пишу свою прогу!!!!! -------------------- "Я испытываю отвращение к системе, разработаннной для "пользователя", если в слове "пользователь" закодировано уничижительное значение "тупой и примитивный". Кен Томпсон, создатель Unix |
|||
|
||||
| TwoK |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 259 Регистрация: 25.3.2002 Репутация: нет Всего: нет |
То есть ты хочешь запустить _ту программу, которую ты пишешь_, с параметрами, которые введет пользователь?
Так создай ему ярлык и пусть балуется Или напиши прогу №2, там вводи этот текст и шеллекзекуть свою первую прогу Или если нет, то на 3 сообщения выше "в меню "Run" есть "Parameters", там в комбобоксе прописываешь все параметры, которые душе угодно. Твоя прога будет запускаться с этими параметрами. Соответственно, когда эта строчка пустая, параметров командной строки не будет." Описал бы нормально: я пишу программу "е-мое". Она должна взять у пользователя параметры командной строки и запустить"... ну и в таком же духе далее. А не "если-если". -------------------- Говорят, что население в стране все меньше и меньше. А народу по утрам в метро почему-то все больше и больше... |
|||
|
||||
| Vit |
|
|||
![]() Vitaly Nevzorov ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 10964 Регистрация: 25.3.2002 Где: Chicago Репутация: 48 Всего: 207 |
Ставишь на форму TEdit и кнопку. На обработчике нажатия кнопки пишешь:
ShellExecute(Handle, 'Open', 'hl.exe', PChar(Edit1.text), 'c:\games\contrstrike', sw_restore); -------------------- With the best wishes, Vit I have done so much with so little for so long that I am now qualified to do anything with nothing Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru |
|||
|
||||
| Sniper |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 511 Регистрация: 8.5.2002 Репутация: нет Всего: 2 |
Так... описываю по-нормальному!
Вот я пишу прогу :-))) Создаю пользователю обычную иконку БЕЗ параметров. Он [пользователь] параметры эти не знает... :-))) Но потом я ему говорю эти параметры.... Он [пользователь] их вводит в иконке и прога запускается с ВВЕДЁННЫМИ параметрами ( пользователь может вводить только некоторые параметры!!! Вопросы: Как запустить прогу только с введёнными параметрами(которые прописаны в иконке)??? Так мой вопрос понятен -------------------- "Я испытываю отвращение к системе, разработаннной для "пользователя", если в слове "пользователь" закодировано уничижительное значение "тупой и примитивный". Кен Томпсон, создатель Unix |
|||
|
||||
| Vit |
|
||||||
![]() Vitaly Nevzorov ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 10964 Регистрация: 25.3.2002 Где: Chicago Репутация: 48 Всего: 207 |
Ты совсем запутал!
Если ты добавил параметры к иконке (я думаю что имеется ввиду shortcut) то конечно программа запустится именно с этими параметрами, ничего писать не надо. Короче чтO именно тебе надо - даю варианты ответа: 1) Запустить чужую программу из своей с параметрами? Используй - ShellExecute - пример я привел 2) Твою программу запустили с параметрами и в ответ на это ты должен сделать какие-то действия? Используй Paramstr, Paramcount 3) Твою программу запустили с параметрами и ты в свою очередь должен запустить чью-то программу с этими же параметрами - используй оба первых ответа вместе. 4) Тебе надо запустить какую-нибудь программу с параметрами из виндов - пишешь в окне Запуска ("Run") myprogram.exe /myparam 5) Тебе надо создать иконку (shortcut) для запуска программы с параметрами - посмотри FAQ на этом форуме - тема "Как создать Shortcut" 6) Тебе надо создать иконку (shortcut) для запуска программы с параметрами в ручную из Windows - там в свойствах иконки есть пункт параметры - вписываешь их туда 7) Узнать с какими параметрами кто-то запустил чужую программу? - это единственный вопрос на который я не знаю ответ. Всё! Ты извини у меня не хватает фантазии придумать что-то еще, что бы можно сделать с параметрами! Пожалуйста - прочитай этот список и напиши какой пункт тебе надо реализовать. Твой последнее сообщение отличается крайней непонятностью:
Имеется ввиду Shortcut или иконка в Listview, или иконка в Treeview или ты просто имеешь ввиду объект TIcon, или ты на Canvas эту иконку рисуешь? Что такое параметры иконки? Параметры бывают или у запускаемого приложения или в кверях, или это Shortcut, который пользователь запускает с параметрами?
Что значит ввести параметры в иконке? Нарисовать на ее Canvas'e? Или ты под иконкой подразумеваешь программу? Или напротив иконки нарисованной на форме у тебя есть Edit Box? Или твоя программа рисует только иконку и ловит сообщения клавиатуры прямо в него?
Запуск проги осуществляется через ShellExecute, а по поводу иконки в которую что-то введено - это напоминает мне "кубический трёхчлен" - умозрительно представить себе это я не могу! Давай ты еще раз напишешь сообщение, используя стандартную терминологию: Иконка - квадратное изображение 16х16 или 32х32 Shortcut - ярлык, программа с расширением lnk, pif -------------------- With the best wishes, Vit I have done so much with so little for so long that I am now qualified to do anything with nothing Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru |
||||||
|
|||||||
| Sniper |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 511 Регистрация: 8.5.2002 Репутация: нет Всего: 2 |
Из всего представленного многообразия мне нужен пункт 2!!
-------------------- "Я испытываю отвращение к системе, разработаннной для "пользователя", если в слове "пользователь" закодировано уничижительное значение "тупой и примитивный". Кен Томпсон, создатель Unix |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |