我需要一种高效的方法,通过远程计算机上的C#执行Microsoft诊断工具故障排除包。
疑难解答的标准是:
我已经找到了几种方法通过Powershell来完成它,但是没有成功地让它开始工作。
如果使用Powershell运行,我需要它使用来自运行C#应用程序的用户的凭据运行,或者至少被提示输入凭据。
我已设法通过msdt.exe和cmd通过WMI运行故障排除程序。但是,它没有完成,我看到的只是在任务管理器中运行的进程。
我要执行的疑难解答包是AERO。
目标操作系统是Windows 7,它位于域网络上。
发布于 2015-09-01 08:47:40
您可以在远程计算机上的任务计划程序中创建任务,指定带有参数的可执行文件,还可以指定凭据和“以最高权限(提升)运行”标志。您可以使用Powershell脚本将Aero故障排除包作为带有日志集合的无人参与的任务启动。然后,您允许手动启动此任务,然后,一旦需要,您可以通过schtasks.exe /run执行预定任务的开始。通过这种方式,可以通过Powershell脚本就像这里(Windows 7资源工具包)实现不关注,任务调度器引擎提供凭据和提升运行。所涉脚本如下:
Import-Module TroubleshootingPack
$aero=Get-TroubleshootingPack $env:systemroot\diagnostics\system\aero
Invoke-TroubleshootingPack -pack $aero -result "c:\temp" -unattendhttps://stackoverflow.com/questions/32056083
复制相似问题