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

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

CreateProcess!!!


V.Turecky ©   (2002-08-07 16:30:00) 

Добрый день. Помогите открыть файл FAULTLOG.TXT с помощью CreateProcess, а то что-то не получаеться у меня. Воспользоваться ShellExecute не предлагать!

procedure TfrmMain.spbtnErrorFileRunClick(Sender: TObject);
var
si:Tstartupinfo;
pi:Tprocessinformation;
begin
ZeroMemory(@si,sizeof(si));
si.cb:=SizeOf(si);
if not CreateProcess(PChar("Notepad.exe"),PChar("FAULTLOG.TXT"),nil,nil,False,Create_default_error_mode,nil,PChar("C:\WINDOWS"),si,pi) then
MessageBox(frmMain.Handle,PChar("Не удается найти файл "FAULTLOG.TXT""),
"Performer of the desires", MB_ICONQUESTION or MB_OK or MB_TASKMODAL);
CloseHandle( pi.hProcess );
CloseHandle( pi.hThread );
end;


Набережных С.   (2002-08-07 21:33:00) [1]

1. Какая связь между неудачей при создании процесса Notepad и отсутствием текстового файла? По-моему, никакой... Да не, точно никакой!
2. Хендлы нужно закрывать в случае удачного вызова CreateProcess, а не от фонаря.
3. Нужно либо полностью указывать путь к исполняемому файлу, либо все писать в параметры:
CreateProcess(nil,"Notepad.exe FAULTLOG.TXT",...
Да еще учитывать, где этот твой лох валяется.


Наверх

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