Al llamar a la función OpenProcess(PROCESS_ALL_ACCESS, 0, pid) esta me devuelve NULL es decir no es capaz de abrir el proceso. Utilizando la función getLastError() esta me devuelve 5, es decir, problemas Administrativos por lo que tengo entendido (Lectura, Escritura). La cosa esta en como puedo solucionar esto para que si me sea posible obenter el proceso??
Nota: Estoy utilizando Microsoft Visual Studio C++ y Windows 8.
Para que se hagan una mejor idea aqui les dejo mi codigo:
A ver si alguien puede echarme una mano pues no se como salir adelante...
Saludos y gracias de antemano!!
Nota: Estoy utilizando Microsoft Visual Studio C++ y Windows 8.
Para que se hagan una mejor idea aqui les dejo mi codigo:
Código (cpp) [Seleccionar]
#include "stdafx.h"
#include <iostream>
#include <Windows.h>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
HWND hwnd = FindWindow(0, _T("NOMBRE_VENTANA"));
HANDLE hProcess;
DWORD pid;
if (!hwnd) {
cout << "ERROR 1\n\n";
} else {
GetWindowThreadProcessId(hwnd, &pid);
cout << "PID = " << pid << "\n\n";
hProcess = OpenProcess(PROCESS_ALL_ACCESS, 0, pid); //PROBLEMA AQUI!!!
if (!hProcess) {
cout << "ERROR = " << GetLastError() << "\n\n"; //OBTENEMOS ERROR = 5 (PRIVILEGIOS)
} else {
cout << "PROCESS OPENED\n\n";
//GESTIONAR...
}
CloseHandle(hProcess);
}
cin.get();
return 0;
}
A ver si alguien puede echarme una mano pues no se como salir adelante...
Saludos y gracias de antemano!!