5

我有一个看起来像这样的 powershell.exe 调用,它可以从我的命令行运行:

powershell.exe -noexit -command " & 'C:\Test\test.ps1' "

但是,当我在当前用户的 runonce-key 中完全以这种方式输入该条目时,什么也没有发生。

从runonce或run调用powershell.exe传递参数的正确方法是什么?

4

3 回答 3

7

尝试使用完整路径:

c:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe -noexit "C:\Test\test.ps1" 

或者

c:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe -noexit -command " & 'C:\Test\test.ps1' " 
于 2012-06-20T13:03:02.413 回答
2

稍微不同的方法是将所有对 powershell.exe 的调用连同所有参数/参数放入一个简单的 *.bat 文件中,然后从 RunOnce Key 调用该 *.bat 文件。这样你就不需要玩那些有时会搞砸的参数。您的 PowerShell 脚本甚至可以删除该 *.bat 文件,因为它只需要一次。

于 2012-06-20T13:41:38.553 回答
1

使用 File 参数而不是命令。您还可以使用其他一些参数来清理内容(noprofile、sta 和/或 WindowStyle)

这是我使用的一个例子。

C:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe -noprofile -sta -WindowStyle Hidden -File "C:\Test\Test.ps1"
于 2012-06-20T15:27:16.040 回答