2016-08-01 26 views
-1

こんにちは、私はプロセスから特定のハンドルを取得する方法が不思議でした。C++ OpenProcess()なしのプロセスからハンドルを取得する

私は、例えば私がプロセスに注入するものを持っているという意味です。他のさまざまなプロセスでハンドルを持っている "example.exe"と私は "example.exe"が既に持っている "exampleHandle.exe"にハンドルを取得したいと思います。

基本的に私はハンドルを "盗む"ので、新しいものを開くことなくハンドルを取得します。

これは私がOpenProcess(とそれをやった方法です)

void ProcMem::Process(char* ProcessName) 
{ 
    HANDLE hPID = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, NULL); 
    PROCESSENTRY32 ProcEntry; 
    ProcEntry.dwSize = sizeof(ProcEntry); 
    do 
     if (!strcmp(ProcEntry.szExeFile, ProcessName)) 
     { 
      dwPID = ProcEntry.th32ProcessID; 
      CloseHandle(hPID); 
      hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, dwPID); 
      return; 
     } 
    while (Process32Next(hPID, &ProcEntry)); 

    cout << "\nCouldn't find process\n"; 
    system("pause"); 
    exit(0); 
} 
+0

あなたはテレポーテーションを求めています。これはC++の機能ではありません。 OS機能でもありません。 –

答えて

関連する問題