Id потока-> HANDLE процесса
От: Mpavel  
Дата: 07.05.04 09:31
Оценка:
Как имея Id потока (или HANDLE) получить HANDLE соответствующего процесса? HANDLE потока я могу получить через OpenThread, а дальше как?
Re: Id потока-> HANDLE процесса
От: Andrusha  
Дата: 07.05.04 09:45
Оценка:
Здравствуйте, Mpavel, Вы писали:

M>Как имея Id потока (или HANDLE) получить HANDLE соответствующего процесса? HANDLE потока я могу получить через OpenThread, а дальше как?


Может так?
Сначала так:
void GetProcessIdOfThread(
  HANDLE Thread
);

А затем так:
HANDLE OpenProcess(
  DWORD dwDesiredAccess,
  BOOL bInheritHandle,
  DWORD dwProcessId
);


P.S. Не проверял...
Re: Id потока-> HANDLEпроцесса
От: Pavel Dvorkin Россия  
Дата: 07.05.04 09:46
Оценка:
Привет!

Mpavel wrote:
>
> Как имея Id потока (или HANDLE) получить HANDLE соответствующего процесса? HANDLE потока я могу получить через OpenThread, а дальше как?

Легально

GetProcessIdOfThread
The GetProcessIdOfThread function retrieves the process identifier of
the process associated with the specified thread.
DWORD GetProcessIdOfThread(
HANDLE Thread
);

А далее OpenProcess, если нужен HANDLE.

Увы, только W2003

Нелегально

NtQueryInformationThread, класс запроса ThreadBasicInformation, вернут в
поле структуры CLIENT_ID.

--
With best regards,
Pavel Dvorkin
Posted via RSDN NNTP Server 1.7 "Bedlam"
With best regards
Pavel Dvorkin
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.