WinExec("程序路径",SW_SHOW)
关闭自己用exit(0)
关闭别的程序,首先获得程序的PID,然后
int
TerminateProcessFromId(DWORD
dwId)
//关闭进程
{
BOOL
bRet=FALSE
HANDLE
hProcess=::OpenProcess(PROCESS_ALL_ACCESS,FALSE,dwId)
if(hProcess!=NULL)
{
bRet=::TerminateProcess(hProcess,0)
}
::CloseHandle(hProcess)
if(bRet)
printf("%d
进程结束成功......\n\n\n\n",dwId)
else
printf("%d
进程结束失败......\n\n\n\n",dwId)
return
0
}
ShellExecute是一个函数,他无法返回被启动应用的句柄,也就是说你没法通过他的返回值去关闭外部应用。你可以试试CreateProcess函数,他会返回你启动程序的句柄,后面你可以通过这个句柄来结束这个应用。或者使用ShellExecute,但是你需要使用进程枚举或者窗口枚举,找到你启动的应用的入口,来结束。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)