Вниз
Скачать: CL | DM;

CreateProcess в WinXP   Найти похожие ветки 

 
-= Demon =-   (2003-09-15 13:13) [0]

Добрый день! Столкнулся с проблемой создания процесса в WinXP. Во всех остальных операционках ее нет (просто сообщение об ошибке и невозможности дальнейшей работы). Вот рабочая функция:

function Exec(cmd, dir: string; ToShow: Boolean): boolean;
var
pi: TProcessInformation;
si: TStartupInfo;
begin
ZeroMemory(@si, sizeof(si));
si.cb:=SizeOf(si);
si.lpReserved:=nil;
si.lpDesktop:=nil;
si.lpReserved2:=nil;
si.cbReserved2:=0;
if ToShow then
si.wShowWindow:=SW_SHOWNORMAL
else
si.wShowWindow:=SW_HIDE;
si.dwFlags:=STARTF_FORCEONFEEDBACK + STARTF_USESHOWWINDOW;
si.lpTitle:=PChar(sTitle);

Result:=CreateProcess(
nil, // pointer to name of executable module
PChar(cmd), // pointer to command line string
nil, // pointer to process security attributes
nil, // pointer to thread security attributes
False, // handle inheritance flag
REALTIME_PRIORITY_CLASS, // creation flags
nil, // pointer to new environment block
nil, // pointer to current directory name
si, // pointer to STARTUPINFO
pi // pointer to PROCESS_INFORMATION
);

WaitforSingleObject(pi.hProcess, INFINITE);
TerminateProcess(pi.hProcess, 0);
end;
//---------------------------------------------------------

Кто-нибудь сталкивался с подобным? Как смогли решить проблему? Главная задача - запустить другое приложение и дождаться его завершения. Напоминаю, работает ВЕЗДЕ, КРОМЕ WIN"XP!


 
Nikolay M. ©   (2003-09-15 13:27) [1]

У меня этот код работает.
Может, не стоят сервис-паки на ХР/дельфи или нет прав на запуск процессов с приоритетом REALTIME_PRIORITY_CLASS?



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.028 c
14-82469
Всеволод Соловьёв
2003-09-06 12:22
2003.09.25
Воздушно-пузырьковые стиралки


1-82321
maxgrp
2003-09-13 18:36
2003.09.25
мышь


1-82312
APTEMKA
2003-09-13 03:20
2003.09.25
Громкость звука


7-82508
Jumbo
2003-07-13 14:26
2003.09.25
Windows RUS/ENG


6-82356
FGTB_8
2003-07-27 13:40
2003.09.25
Как сделать чтобы прога висела в нете, имела свой адрес (к пример




   Наверх