该用户从未签到
风云使者
威望- 176
金钱- 5055
贡献- 19
推广数- 0
紫钻- 0
- 阅读权限
- 45
- 在线时间
- 83 小时
- 最后登录
- 2013-11-26

|
发表于 2013-7-16 22:37:13
|
显示全部楼层
一般OpenProcess之前都需要提升一下权限,估计是程序上的问题吧,之前好像我也出现类似的,不过提权了之后就好了,不知道有没有记错,如果不是你的源码,那还是要用Ollydby跟踪一下。
//提升权限
BOOL ImproveProcPriv()
{
HANDLE token;
//提升权限
if(!OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES,&token))
{
MessageBox(NULL,"打开进程令牌失败...","错误",MB_ICONSTOP);
return FALSE;
}
TOKEN_PRIVILEGES tkp;
tkp.PrivilegeCount = 1;
: ookupPrivilegeValue(NULL,SE_DEBUG_NAME,&tkp.Privileges[0].Luid);
tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
if(!AdjustTokenPrivileges(token,FALSE,&tkp,sizeof(tkp),NULL,NULL))
{
MessageBox(NULL,"调整令牌权限失败...","错误",MB_ICONSTOP);
return FALSE;
}
CloseHandle(token);
return TRUE;
}
HANDLE hOpen = OpenProcess( PROCESS_ALL_ACCESS,FALSE, dwpid); |
|