这是我到目前为止所拥有的:
$source1="C:\Folder\Files\IPList.txt"
Get-Content $source1 |
Where-Object {-not(gwmi win32_process -ComputerName $_ -filter "name='Program.exe'")} |
Foreach-Object {Invoke-Command -ComputerName $_ -ScriptBlock {"C:\Program Files\Folder\Folder\Program.exe"}}
当我在 ISE 中运行它时,一切都恢复正常并说它运行正确。但是,当我查看我的远程机器时,什么都没有执行。Process Program.exe 未运行,应启动该 exe。我正在从服务器运行它来访问大约 50 台远程机器。一旦它通过所有 50,我将循环它并让它再次执行,然后在无限循环中继续该过程。
程序远程启动我缺少什么?顺便说一句,我在 Server 2008 R2 上运行这个脚本,它正在运行 Windows 7 机器。
编辑
我想知道,因为我可以看到进程启动,这是 Windows 7 的问题吗?我知道微软改变了一些事情,服务无法在用户空间中启动应用程序。你认为这会是同一个问题的一部分吗?