En este pequeño programa, ¿por qué GetCurrentProcess()
devuelve -1?¿Por qué GetCurrentProcess devuelve -1?
int _tmain(int argc, _TCHAR* argv[]) {
HANDLE h = GetCurrentProcess(); // ret -1
printf("0x%x\n",(DWORD)h);
return 0;
}
¿Qué problema?
En Kernel32.GetCurrentProcess
I ver esto:
OR EAX,FFFFFFFF ; EAX - ?
RETN
Es un caso especial autorreferencial. Puede obtener el 'MANGO' real que representa su proceso si lo necesita por alguna razón (quizás para IPC) usando 'OpenProcess (...)'. –