Форум: "WinAPI";
Текущий архив: 2005.10.09;
Скачать: [xml.tar.bz2];
Внизаргумент Parameters в shellExecute - как им пользоваться? Найти похожие ветки
← →
Pasha L © (2005-08-09 17:22) [0]Здравствуйте. Вопрос связан с функцией shellExecute. Там есть один аргумент - Parameters - он предназначен для того, чтобы передать, как я понял, какую-либо информацию запускающемуся приложению. Но я не знаю, как этим параметром пользоваться?
← →
IceBeerg © (2005-08-09 18:28) [1]Ты когда нибудь запускал, что-нибудь вот так "<имя_программы> /?", например copy /?, а?
← →
begin...end © (2005-08-09 18:28) [2]Досовские команды помните?
copy c:\file.ext d:\newfile.ext
format c: /q
dir /p
Выделенное -- это параметры и есть. Если ничего такого передавать запускаемому приложению не нужно, передавайте nil.
← →
Anatoly Podgoretsky © (2005-08-09 18:48) [3]Pasha L © (09.08.05 17:22)
Параметры в соответствии со справкой на программу, тип PChar
begin...end © (09.08.05 18:28) [2]
Неверно, за исключением format, все строки полностью являются параметром. Это не программы, а аргументы командного процессора.
← →
begin...end © (2005-08-09 18:54) [4]> Anatoly Podgoretsky © (09.08.05 18:48) [3]
> Это не программы, а аргументы командного процессора
Не приписывайте мне того, чего я не говорил.
Я не говорил, что это программы. Я говорил, что выделенное -- это параметры.
← →
Fay © (2005-08-09 19:09) [5]3 begin...end © (09.08.05 18:54) [4]
Надо бы ещё наехать за формулировку "за исключением format, все строки"!
8)
← →
begin...end © (2005-08-09 19:11) [6]> Fay © (09.08.05 19:09) [5]
Я ни на кого не наезжал, всё как раз наоборот.
Выделенное в [2] -- это действительно параметры. Поэтому не вижу, что у меня там "неверно".
← →
Anatoly Podgoretsky © (2005-08-09 19:36) [7]begin...end © (09.08.05 19:11) [6]
Тем что
то не будет работать, параметры здесь это
copy c:\file.ext d:\newfile.ext
format c: /q
dir /p
← →
begin...end © (2005-08-09 19:51) [8]> Anatoly Podgoretsky © (09.08.05 19:36) [7]
> Тем что
> то не будет работать
Я вообще ничего не говорил о том, что должно работать, а что нет. Объяснять Ваши домыслы я не намерен. Я пояснил, что такое параметры. И не вижу ничего неверного в посте [2].
А вот отрывок из справки по Windows 98:
Вывод справки для команды MS-DOS
Введите в командную строку нужную команду с параметром /?.
Например, введите chdir /? для вывода справки о команде chdir.
Примечание
Чтобы выводить справочную информацию с паузами между экранами, следует поместить в конец командной строки параметр | more. Например, введите dir /? | more для вывода справки о команде dir.
Из этого следует, что dir и chdir -- это команды, а /? и | more -- это параметры. Согласно документации Microsoft. А то, как Вы называете команды dir, copy и другие, мне безразлично.
← →
Anatoly Podgoretsky © (2005-08-09 19:54) [9]Ладно, тебе все равно ничего не доказать, может года через два сам поймешь.
← →
begin...end © (2005-08-09 19:59) [10]> Anatoly Podgoretsky © (09.08.05 19:54) [9]
Мне в данном случае и не надо ничего понимать. Я вижу, что Microsoft называет командами, а что -- параметрами. Ваше мнение в этом вопросе меня не интересует. Потому что MS-DOS и Windows писала Microsoft, а не Вы.
← →
Fay © (2005-08-09 19:59) [11]2 Anatoly Podgoretsky © (09.08.05 19:54) [9]
Что-то я сомневаюсь, что существует то самое невдолбенное нечто, которое 09.08.2005 begin...end наконец осмыслит 8).
Разве что "ничего", которое "не доказать" 8)
← →
Anatoly Podgoretsky © (2005-08-09 20:41) [12]Вот именно MS-DOS
Если ты настолько уверен то введи из командной строки <Пуск><Выполнить>DIR и доложи сюла резултат, тоже самое пожешь повторить для FORMAT
← →
Anatoly Podgoretsky © (2005-08-09 20:43) [13]А при желании можешь и ShellExecute(0, "dir", "/p", nil, SW_SHOWNORMAL);
← →
begin...end © (2005-08-09 20:49) [14]> Anatoly Podgoretsky © (09.08.05 20:43) [13]
Я такого бредового кода не приводил. Поэтому не вижу смысла объяснять, почему он не работает.
Моей целью было объяснить, что такое параметры. Я это сделал на примере команд MS-DOS.
← →
ANB © (2005-08-09 20:54) [15]
> Anatoly Podgoretsky © (09.08.05 20:43) [13]
По сабжу begin..end дал правильную подсказку.
Думаю, он и сам знает, что фактически часть его команд является параметрами командного интерпретатора. Но в доке по MS DOS и правда написано, что DIR - это команда. Эх, старые добрые времена, были внутренние команды и внешние . . . Может холиварчик затеем в потрепаться ?
← →
Anatoly Podgoretsky © (2005-08-09 20:56) [16]Только он отричает.
← →
ANB © (2005-08-09 21:02) [17]
> Anatoly Podgoretsky © (09.08.05 20:56) [16]
- да не отрицает он. И вообще уже поздно. Пора в потрепаловку идти.
← →
begin...end © (2005-08-09 21:06) [18]> Anatoly Podgoretsky © (09.08.05 20:56) [16]
Да, я отрицаю, что copy -- это НЕ команда, а /p -- это НЕ параметр.
Потому что по моему мнению (и по мнению Microsoft, причём не только применительно к MS-DOS, но и применительно к Windows 98 и XP) copy -- это команда, а /p -- это параметр.
← →
ANB © (2005-08-09 21:16) [19]
> begin...end © (09.08.05 21:06) [18]
- ну вы еще подеритесь.
Сабж по поводу ShellExecute. Не поленился залезть в хелп и посмотреть. У этой функции вообще нет параметра "команда". Чего спорить то. И вообще, CreateProcess рулит (кстати, именно для нее DIR - параметр).
← →
Pasha L © (2005-08-11 01:24) [20]Ладно. Я понял, что значит аргумент Parameter. Но как сделать, чтобы моя программа перенимала эту информацию. То есть программу, которую я запускаю с помощью shellexecute тоже сделана мною. И я хочу, чтоб она переняла при запуске Parameter. Как её заставить?
← →
Alexander Panov © (2005-08-11 01:51) [21]См. ParamCount, ParamStr.
← →
Германн © (2005-08-11 02:29) [22]Паша уточнил вопрос.
Саша уточнил ответ.
АП. И "begin...end" - кончайте вашу разборку!
Кто из Вас кого не любит и за что, это вопрос Ваш!
Кстати. Столь активного участия АП в форуме - давно не наблюдал!
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2005.10.09;
Скачать: [xml.tar.bz2];
Память: 0.5 MB
Время: 0.016 c