我想杀死一个名为Sample.exe的应用程序
我尝试使用TerminateProcess,它在杀死Sample.exe时返回了ACCESS_DENIED错误。后来我发现这是一个访问权限问题。
如何使用ShellExecute API以使用Administrador权限终止Sample.exe
:: ShellExecute(NULL,NULL,L“taskkill”,L“/ F / T / IM Sample.exe”,NULL,SW_HIDE);
有人能建议一个好的解决方案吗?
谢谢, Sreekumar Sasidharan
答案 0 :(得分:0)
如果...
taskkill /F /T /IM Sample.exe
...不会在(常规,非提升)命令行提示符下工作,然后......
::ShellExecute(NULL, NULL, L"taskkill", L"/F /T /IM Sample.exe", NULL, SW_HIDE);
...在您的代码中,当作为常规非提升用户运行时,同样会失败。
解决方案是运行程序 as-admin (提升)。当然,你必须意识到如果它起作用的话,这将是多大的安全漏洞。