|
Вопрос # 2 176/ вопрос открыт / |
|
Приветствую, уважаемые эксперты! Подскажите пожалуйста, можно ли в Delphi использовать код командной строки, и если да, то как?
 |
Вопрос задал: AlphA (статус: Посетитель)
Вопрос отправлен: 8 декабря 2008, 18:33
Состояние вопроса: открыт, ответов: 0.
|
Мини-форум вопроса
Всего сообщений: 4; последнее сообщение — 9 декабря 2008, 10:15; участников в обсуждении: 3.
|
Вадим К (статус: Академик), 8 декабря 2008, 18:43 [#1]:
Код командной строки - это что, выполнить команды типа ping|copy?
Тогда да, для начала можно юзать WinEcex. А потом начать гуглить на его тему и дойти до CreateProcess (всё по потребностям)
Галочка "подтверждения прочтения" - вселенское зло.
|
|
AlphA (статус: Посетитель), 8 декабря 2008, 19:17 [#2]:
Извините, что не в тему. Пока искал CreateProcess, нашел ShellExecute, на него Delphi 7 вообще ругается, что нет такого.
[Error] Unit1.pas(28): Undeclared identifier: 'ShellExecute'
Почему так?
|
|
Вадим К (статус: Академик), 8 декабря 2008, 19:22 [#3]:
а надо в uses добавить ShellApi
Галочка "подтверждения прочтения" - вселенское зло.
|
|
BurcevD (статус: Посетитель), 9 декабря 2008, 10:15 [#4]:
Можно, довольно простым способом.
1. Что нужно - это узнать параметр, его можно узнать с помощью функции ParamStr(<Номер параметра> , где Номер параметра начинается с 1.
2. Выполнить ее, например с помощью ShellExecute
Например,
Uses ShellApi; //Подключаем модуль
...
If ParamCount>0 then //Проверяем на наличие параметров
ShellExecute(Application.Handle,'open', Pchar(ParamStr(1)),nil,nil,sw_ShowNormal);
...
P.S. Естественно, что команду через параметр нужно будет указать в кавычках, например
MyExample.exe "copy a:\*.* d:\*.*"
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|