![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
запуск bat файла [D7, WinXP]
ancot © (2007-04-12 23:08:00)всем доброго вечера
может кто подскажет как запустить bat файл из приложения delphi. как я понимаю winexec и shellexecute работают только с exe...
stakan (2007-04-26 14:24:00) [1]
ShellExecute(Handle, 'open', 'ping', '-t localhost', nil, SW_SHOW);
sadasd (2007-04-26 14:14:00) [2]уж коль пошла такая пьянка....
не подскажите как запустить утилиту виндосовскую ping, из delphi, причем чтобы можно было менять параметры...
парметры:
ping -t localhost
причем вместо localhost из дельфи можно было бы подставить любой ip...
как-то так...
никто не подскажет?
Пока что юзер (2007-04-26 13:05:00) [3]stakan
begin...end
Спасибо! :)
begin...end (2007-04-26 11:47:00) [4]> Пока что юзер © (26.04.07 11:21) [5]
Прописать надо ShellAPI. Но после этого сразу же возникнет другая ошибка, потому что у ShellExecute 6 параметров, а не 2. Описание функции и параметров см. в справке по API.
stakan (2007-04-26 11:45:00) [5]
> это надо что то в user прописать
>
> если можно подробно ПЛЗ.
> Жду
> СПС.
Не в user, а в uses. ShellApi.
Пока что юзер (2007-04-26 11:21:00) [6]Помогите юзеру :)
хочу например запустить файл .TXT, прописал:
procedure TForm1.button1Click(Sender: TObject);
begin
shellexecute ('c:\123.txt',1);
end;
ругается пишет
Undecleared identifier: 'shellexecute'
это надо что то в user прописать
если можно подробно ПЛЗ.
Жду
СПС.
Плохиш (2007-04-13 11:19:00) [7]
> ancot (12.04.07 23:08)
Я тэбэ один тайна открою, эти функции работают не только с файлами...
delphim (2007-04-13 09:56:00) [8]можно, напримерБ так:
где acmd - имя вашего .bat файла
function TForm1.executedCmdShell(acmd: string): Boolean;
var
si: TStartupInfo;
pi: TProcessInformation;
begin
Result := true;
if Length(acmd) = 0 then exit;
try
FillChar(si, SizeOf(si), 0);
si.cb := SizeOf(si);
Result := CreateProcess(
nil, PChar(acmd), nil, nil, true, CREATE_NO_WINDOW, nil, nil, si, pi);
if Result then
WaitForSingleObject(pi.hProcess, INFINITE);
except
Result := false;
end;
if not Result then exit;
CloseHandle(pi.hProcess);
CloseHandle(pi.hThread);
end;
Германн (2007-04-13 00:09:00) [9]
> как я понимаю ... shellexecute работают только с exe
Вы и близко не понимаете со сколькими типами файлов работает ShellExecute! (Правда большинство из них "документы"! Чур, чур меня! :)
Dmitrij_K (2007-04-12 23:14:00) [10]
> как я понимаю winexec и shellexecute работают только с exe...
Неправильно понимаешь. Хорошо работает