Здравствуйте, vao, Вы писали:
vao>Есть сервер он пускает новым процессом диалог выбора и настройки, при этом сервер регистрирует ProcessId. Из диалога идет запуск ресурсоемкой задачки из некоторго списка. Она замещает процесс с диалогом и общаеться с сервером. Если использовать CreateProces то задачка получаеться с новым ProcessId и сервер ее неузнаёт.
каким образом задача общается с сервером? может не в идентификаторе процесса дело?
ведь в приведенном коде:
i = fork();
switch (i)
{
case -1:
perror("LOADSEGY: fork");
return(0);
case 0:
freopen(logname, "w", stdout);
freopen(errlogname, "w", stderr);
execvp(*new_argv, new_argv);
perror("LOADSEGY: execvp");
_exit(0);
default:
waitpid(i, &stat, 0)
}
execvp() вызывается из дочернего процесса, а родительский ждет его завершения.