PDA

Просмотр полной версии : Помогите PROCESS_INFORMATION WINAPI


Fl0dER
18.02.2010, 14:10
Собствено
надо получить PROCESS_INFORMATION также как тут

STARTUPINFO si;
PROCESS_INFORMATION pi;
CreateProcess(NULL,"notepad.exe",NULL,NULL,0,
CREATE_SUSPENDED,NULL,NULL,&si,&pi);


только с запущенного чужого процесса

arpm
18.02.2010, 14:45
Насколько я помню, напрямую нельзя. Да и зачем? Эта структура содержит хендл самого процесса, хендл первого потока и их айдишники. Все это можно получить через снапшот. Почитайте тут: http://msdn.microsoft.com/en-us/library/ms686701%28VS.85%29.aspx

Fl0dER
18.02.2010, 15:11
разве хендл процесса мона узнать ?

Fl0dER
18.02.2010, 15:12
Мне именно хендл и нужен

arpm
18.02.2010, 15:31
Почитайте MSDN.
http://msdn.microsoft.com/en-us/library/ms684320%28VS.85%29.aspx

Fl0dER
18.02.2010, 15:43
Ой Ой надо ThreadId у чужого процесса

\\ChaOs//
18.02.2010, 15:57
http://msdn.microsoft.com/en-us/library/ms683233(VS.85).aspx

http://msdn.microsoft.com/en-us/library/ms684335(VS.85).aspx

transserg
18.02.2010, 15:58
Fl0dER используешь библиотеку ToolHelp32 там с помощью Thread32First И Thread32Next находишь TID потока нужного тебе после через OpenThread получаеш хендл этого потока

Fl0dER
18.02.2010, 16:21
хм спс , а как получит Thread Handle ?

transserg
18.02.2010, 16:25
Fl0dER первый параметр права с которыми ты открываешь Handle второй параметр Наследовать ли хендлы этого потока 3й параметр это ID потока
функция возвращает Хендл потока

HANDLE WINAPI OpenThread(
__in DWORD dwDesiredAccess,
__in BOOL bInheritHandle,
__in DWORD dwThreadId
);