15,473
社区成员




BOOL EnabledDebugPrivilege()
{ //改成兄台的还是不行, 我原来的代码是这样
HANDLE hToken;
TOKEN_PRIVILEGES tkp;
if (!OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken))
return false;
LookupPrivilegeValue(NULL,SE_SHUTDOWN_NAME,&tkp.Privileges[0].Luid); //SeDebugPrivilege-->SE_SHUTDOWN_NAME
tkp.PrivilegeCount = 1;
tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
AdjustTokenPrivileges(hToken,false,&tkp,0,(PTOKEN_PRIVILEGES)NULL,0);
if (GetLastError() != ERROR_SUCCESS)
return false;
return true;
}
HANDLE hRemoteProcess= NULL;
hRemoteProcess = OpenProcess( PROCESS_CREATE_THREAD | PROCESS_VM_OPERATION | PROCESS_VM_WRITE, FALSE, dwRemoteProcessId );
// 权限是这样的应该是最高了把