Помогите PROCESS_INFORMATION WINAPI

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by Fl0dER, 18 Feb 2010.

  1. Fl0dER

    Fl0dER New Member

    Joined:
    22 Dec 2008
    Messages:
    81
    Likes Received:
    3
    Reputations:
    0
    Собствено
    надо получить PROCESS_INFORMATION также как тут

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


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

    arpm New Member

    Joined:
    6 Apr 2008
    Messages:
    8
    Likes Received:
    4
    Reputations:
    4
    Насколько я помню, напрямую нельзя. Да и зачем? Эта структура содержит хендл самого процесса, хендл первого потока и их айдишники. Все это можно получить через снапшот. Почитайте тут: http://msdn.microsoft.com/en-us/library/ms686701%28VS.85%29.aspx
     
  3. Fl0dER

    Fl0dER New Member

    Joined:
    22 Dec 2008
    Messages:
    81
    Likes Received:
    3
    Reputations:
    0
    разве хендл процесса мона узнать ?
     
  4. Fl0dER

    Fl0dER New Member

    Joined:
    22 Dec 2008
    Messages:
    81
    Likes Received:
    3
    Reputations:
    0
    Мне именно хендл и нужен
     
  5. arpm

    arpm New Member

    Joined:
    6 Apr 2008
    Messages:
    8
    Likes Received:
    4
    Reputations:
    4
    Почитайте MSDN.
    http://msdn.microsoft.com/en-us/library/ms684320%28VS.85%29.aspx
     
  6. Fl0dER

    Fl0dER New Member

    Joined:
    22 Dec 2008
    Messages:
    81
    Likes Received:
    3
    Reputations:
    0
    Ой Ой надо ThreadId у чужого процесса
     
  7. \\ChaOs//

    \\ChaOs// Member

    Joined:
    26 Feb 2009
    Messages:
    102
    Likes Received:
    26
    Reputations:
    5
    http://msdn.microsoft.com/en-us/library/ms683233(VS.85).aspx

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

    transserg Elder - Старейшина

    Joined:
    2 Jul 2008
    Messages:
    147
    Likes Received:
    25
    Reputations:
    2
    Fl0dER используешь библиотеку ToolHelp32 там с помощью Thread32First И Thread32Next находишь TID потока нужного тебе после через OpenThread получаеш хендл этого потока
     
  9. Fl0dER

    Fl0dER New Member

    Joined:
    22 Dec 2008
    Messages:
    81
    Likes Received:
    3
    Reputations:
    0
    хм спс , а как получит Thread Handle ?
     
  10. transserg

    transserg Elder - Старейшина

    Joined:
    2 Jul 2008
    Messages:
    147
    Likes Received:
    25
    Reputations:
    2
    Fl0dER первый параметр права с которыми ты открываешь Handle второй параметр Наследовать ли хендлы этого потока 3й параметр это ID потока
    функция возвращает Хендл потока
    Code:
    HANDLE WINAPI OpenThread(
      __in  DWORD dwDesiredAccess,
      __in  BOOL bInheritHandle,
      __in  DWORD dwThreadId
    );