-
-
[求助]请教:关于强制关闭进程问题
-
发表于:
2007-11-27 14:20
6258
-
BOOL GetDebugPriv()
{
HANDLE hToken;
LUID sedebugnameValue;
TOKEN_PRIVILEGES tkp;
HANDLE hGetHandle=GetCurrentProcess();
if ( ! OpenProcessToken(hGetHandle,
TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken ) )
{
return FALSE;
}
if ( ! LookupPrivilegeValue( NULL, SE_DEBUG_NAME, &sedebugnameValue ) )
{
CloseHandle( hToken );
return FALSE;
}
tkp.PrivilegeCount = 1;
tkp.Privileges[0].Luid = sedebugnameValue;
tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
if (!AdjustTokenPrivileges( hToken, FALSE, &tkp, sizeof(tkp), NULL, NULL ) )
{
CloseHandle( hToken );
return FALSE;
}
CloseHandle(hToken);
return TRUE;
}
{
...
DWORD proc_code=420;//这个是我自行指定的进程。通过WINDOWS进程查看得到的PID
HANDLE hProc;
bSuc=GetDebugPriv(); //获取DEBUG调试权限
hProc=OpenProcess(PROCESS_CREATE_THREAD|PROCESS_VM_OPERATION|PROCESS_VM_WRITE|PROCESS_ALL_ACCESS,TRUE,proc_code); //获进程handle
bSuc=TerminateProcess(&hProc,0);//终结进程,以上操作均可返回正确数据值,惟此不能正确返回。 不解,遂请教
}
调试环境: 机器AMD CPU
VC6.0
ms windows2000
不明为何终结方法不可执行
win32
q群一:******
二:*******
三:*******
[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法