Код из примера NoTerminate: //определяем версию ядра системы switch (*NtBuildNumber) { case 2195 : //win 2k OpenProcId = 0x06A; break; case 2600 : //win xp OpenProcId = 0x07A; break; default : return STATUS_NOT_IMPLEMENTED; break; } есть ли что-то более универсальное?
Способ найден. Вопрос, как сделать то же самое в ядре? HMODULE hNtDllModule = GetModuleHandle(L"ntdll.dll"); PDWORD pdwServiceNumber = (PDWORD)((DWORD)GetProcAddress(hNtDllModule, "NtOpenProcess") + 1); cout << *pdwServiceNumber;