我正在使用管理员权限运行
(包括<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />)
我使用的进程列表List<string>- 不需要被杀死的进程。
var name = new List<string>
{
"svchost", "csrss", "System", "wininit","ApplicationFrameHost",
"irstrtsv","scrncap","lsass","devenv","System","audiodg","fontdrvhost",
"wininit","taskmgr","dwm","spoolsv","smss","alg","igfxTray","IpOverUsbSvc",
"SearchIndexer","lsm","taskhost","svchost","explorer","scrncap","opera",
"winlogon","services","conhost","ctfmon","ati2evxx","BTTray","nvcontainer",
"dwm","issch","jusched","rthdcpl","rundll32","wmiprvse","wudfhost","SwiService",
"AvrcpService","devenv","msvsmon","LMS","jhi_service","nvvsvc","nvcontainer",
"igfxHK","igfxEM","igfxCUIService","IAStorDataMgrSvc","PerfWatson2","PresentationFontCache",
"SecurityHealthService","ShellExperienceHost","sihost","SynTPEnh","SynTPEnhService","SynTPHelper",
"SystemSettings","taskhostw","ViakaraokeSrv","WinStore.App","WUDFHost",
};
try
{
foreach (var anti in Process.GetProcesses())
{
if (name.IndexOf(item: anti.ProcessName.ToLower()) < 0 && anti.ProcessName != Process.GetCurrentProcess().ProcessName)
{
// Обходим все процессы из List<string> и убиваем все остальные.
anti.Kill();
}
}
}
catch (Exception ex) { File.WriteAllText("ErrorEx.txt", contents: ex.Message); }
启动后,最多会杀死列表中的一个进程。
发布在 Windows 10 上。
PS:ErrorEx.txt -权限被拒绝!
什么不见了 :)
在调查实验中,我发现使用进程,并不是每个人都可以访问。结果,我将
try\catch它移到循环中foreach并将其留空(以捕获所有异常)-尽管这是不正确的。我认为您可以解决它(每个人都会找到自己的解决方案)解决方案: