如何用VC2005关闭QQ?

hellward 2008-11-18 12:50:45
下面的代码的VC6版本是可以关闭qq的,不知道2005下为什么不能关闭,请高手帮忙
void KillQQ()
{
HANDLE hSnapshot;
hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
PROCESSENTRY32 pe;
Process32First(hSnapshot,&pe);
do
{
if(0 == wcscmp(pe.szExeFile,TEXT("QQ.exe")))
{
HANDLE hProcess;
hProcess = OpenProcess(PROCESS_TERMINATE,FALSE,pe.th32ProcessID);
if(hProcess)
{
TerminateProcess(hProcess,0);
}
}
}
while(Process32Next(hSnapshot,&pe));
CloseHandle(hSnapshot);
}
...全文
129 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
hellward 2008-11-18
  • 打赏
  • 举报
回复
谢谢一哥,我注意到要不分大小写比较了,试过了,只是问题不是出在这,就是Debug权限的问题。
ct_qy 2008-11-18
  • 打赏
  • 举报
回复
楼上说的不错。不分大小写比较要这样用:
if(0 == wcsicmp(pe.szExeFile,TEXT("QQ.exe")))

还有,OpenProcess的时候最好有Debug权限,不然对于有的进程会失败。你问我的我已经发你邮箱了。
  • 打赏
  • 举报
回复
这样的程序我做过,你具体的代码我没有看,你可以查看一下,QQ.exe进程有时在任务管理器当中,不是全大写的,也不是小写,它是会变化的。
你应该把这个进程的名称转换一下才成,比如全部小写或大写,然后再来进行比较。
zzz822163 2008-11-18
  • 打赏
  • 举报
回复
你单步跟踪看啥是哪出问题了吧?
maxsuy 2008-11-18
  • 打赏
  • 举报
回复
大小写和权限
-----------------------------------------------
http://www.wantsoft.com
隐形者软件代码交流博客
-----------------------------------------------

15,473

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧