Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Запуск *.bat файла


Ivolg ©   (2006-07-30 17:31:00) 

Вообщем нужно запустить *.bat файл, так как это делает команда "Вылопнить" (Пуск -> Выполнить)...
P.S Функции WinExec и ShellExecute - почему-то непомогают... Помогите пожайлуста.


Германн   (2006-07-30 20:17:00) [1]


> У меня по прежнему нечего неработает (
>

Может компьютер выключен?
:-)


Ivolg   (2006-07-30 18:32:00) [2]

>jack128

У меня по прежнему нечего неработает (


jack128   (2006-07-30 18:06:00) [3]

function ExecAndWait(const ExeName, Params: string; out ExitCode: Cardinal; Timeout: Cardinal = MaxInt): boolean;
var
 sui: TStartupInfo;
 pi: TProcessInformation;
begin
 ZeroMemory(@sui, SizeOf(sui));
 sui.cb := SizeOf(sui);
 Win32Check(CreateProcess(nil, PChar('"' + ExeName + '" ' + Params), nil, nil, False, 0, nil,
   nil, sui, pi));
 try
   CloseHandle(pi.hThread);
   Result := WaitForSingleObject(pi.hProcess, Timeout) = WAIT_OBJECT_0;
   if Result and (@ExitCode <> nil) then
     Win32Check(GetExitCodeProcess(pi.hProcess, ExitCode));
 finally
   CloseHandle(pi.hProcess);
 end;
end;

procedure ExecCommandLine(const Cmd: string);
var
 Dummy: Cardinal;
begin
 ExecAndWait(GetEnvironmentVariable('ComSpec'), '/C ' + Cmd, Dummy);
end;

procedure TForm8.FormCreate(Sender: TObject);
begin
 ExecCommandLine('C:\Temp\1.bat');
end;


Всё работает.


jb   (2006-07-30 17:59:00) [4]

Действительно не получается и вариант Destroyer © тоже не сробатывает


Destroyer   (2006-07-30 17:47:00) [5]

Может запустить командную строку с параметрами?


Наверх

Титульная страница Поиск, карта сайта Написать письмо