Найти родительский процесс
От: BoberPlus  
Дата: 12.08.08 07:03
Оценка:
Есть идентификатор процесса, нужно найти процесс который его создал.
В какую сторону копать ?

Заранее спасибо.
Re: Найти родительский процесс
От: kesar Россия  
Дата: 12.08.08 07:16
Оценка:
BP>Есть идентификатор процесса, нужно найти процесс который его создал.
BP>В какую сторону копать ?

OpenProcess
Re[2]: Найти родительский процесс
От: BoberPlus  
Дата: 12.08.08 07:20
Оценка:
Здравствуйте, kesar, Вы писали:

BP>>Есть идентификатор процесса, нужно найти процесс который его создал.

BP>>В какую сторону копать ?

K>OpenProcess


А что OpenProcess ? Он такой информации не дает. Насколько я понял, в прямую (т.е. вызвать какую-то функцию) задача не решается, но наверняка есть обходные пути.
Re[3]: Найти родительский процесс
От: kesar Россия  
Дата: 12.08.08 07:29
Оценка:
BP>А что OpenProcess ? Он такой информации не дает. Насколько я понял, в прямую (т.е. вызвать какую-то функцию) задача не решается, но наверняка есть обходные пути.

MSDN search — Taking a Snapshot and Viewing Processes
вкратце тебе нужен th32ParentProcessID в PROCESSENTRY32.
Re: Найти родительский процесс
От: dcb-BanDos Россия  
Дата: 12.08.08 07:37
Оценка:
Здравствуйте, BoberPlus, Вы писали:

BP>Есть идентификатор процесса, нужно найти процесс который его создал.

BP>В какую сторону копать ?

BP>Заранее спасибо.


Process32First() PROCESSENTRY32.th32ParentProcessID;

th32ParentProcessID
Process identifier of the process that created this process (its parent process).

Ничто не ограничивает полет мысли программиста так, как компилятор.
Re: Найти родительский процесс
От: Аноним  
Дата: 12.08.08 14:53
Оценка:
    PROCESS_BASIC_INFORMATION pbi = {0};
    NTSTATUS s = ZwQueryInformationProcess(prc, ProcessBasicInformation, &pbi, sizeof(pbi), NULL);
    DWORD pid = (DWORD)pbi.UniqueProcessId;
    DWORD parent = (DWORD)pbi.InheritedFromUniqueProcessId;


пардом за мой нативный...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.