Как запустить прогу из под своего приложения???

Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду

Ответить
Vano
Сообщения: 41
Зарегистрирован: 16 авг 2004, 22:21
Откуда: Днепропетровск
Контактная информация:

Хочу, например, запустить exe-шник, который находится в системной папке, при нажатии на кнопку в своём приложении. Как это можно реализовать?
Аватара пользователя
Naeel Maqsudov
Сообщения: 2570
Зарегистрирован: 20 фев 2004, 19:17
Откуда: Moscow, Russia
Контактная информация:

uses ShellApi;

....


ShellExecute(....);

Можно запускать приложения, пакетные файлы (cmd, bat), а также открывать файлы, типам которых ассоциированы приложения (например, документы Word)
Vano
Сообщения: 41
Зарегистрирован: 16 авг 2004, 22:21
Откуда: Днепропетровск
Контактная информация:

А если, например, при выполнении комонды systeminfo я хочу чтобы вся информация была перенаправлена в *.txt файл.
Я попробывал так:

в Parameters прописал >c:\a.txt

но в файл ничего не добавило, как это можно реализовать???
Аватара пользователя
Naeel Maqsudov
Сообщения: 2570
Зарегистрирован: 20 фев 2004, 19:17
Откуда: Moscow, Russia
Контактная информация:

Прочитайте переменную окружения COMSSPEC она содержит полный путь к command.com или cmd.exe.

(См функцию Windows.GetEnvironmentStrings)

Запускайте командный процессор с параметрами

"/с c:\xxx\sysinfo >c:\a.txt"

/c - это запуск на одну команду

подробнее см. cmd /?
rootpro
Сообщения: 30
Зарегистрирован: 12 апр 2005, 14:57
Откуда: РБ, Стерлитамак
Контактная информация:

- Запустить блокнот (notepad)

Код: Выделить всё

uses ShellApi;
...ShellExecute(Handle, 'open',
  'c:\Windows\notepad.exe', nil, nil, SW_SHOWNORMAL);
- Открыть текстовый файл c:\text.txt в блокноте

Код: Выделить всё

ShellExecute(Handle, 'open',
  'c:\windows\notepad.exe', 'c:\text.txt', < BR > nil,
  SW_SHOWNORMAL);
- Показать содержимое каталога c:\archive

Код: Выделить всё

ShellExecute(Handle, 'open', 'c:\archive', nil, nil,
  SW_SHOWNORMAL);
- Открыть файл в соответствии с расширением

Код: Выделить всё

ShellExecute(Handle,
  'open', 'c:\MyDocuments\Letter.doc', nil, nil, SW_SHOWNORMAL);
- Открыть html документ в браузере по умолчанию

Код: Выделить всё

ShellExecute(Handle,
  'open', 'http://src.fitkursk.ru', nil, nil, SW_SHOWNORMAL);
[iQ][BuG]
Сообщения: 4
Зарегистрирован: 16 апр 2005, 17:37

ещё есть така замечательная функция, называица WinExec,
имеющая следующий синтаксис (в нотации c):

UINT WinExec(

LPCSTR lpCmdLine, // address of command line
UINT uCmdShow // window style for new application
);

Код: Выделить всё

WinExec('cmd.exe', 1);
Ответить