0

我有一个 powershell windows 窗体,它有一个按钮,该按钮使用调用表达式调用批处理文件,然后调用另一个 powershell 脚本。该脚本运行良好,但我在 powershell 命令窗口中看不到第二个脚本的输出。

单击时调用第二个 powershell 脚本的按钮:

$run = New-Object System.Windows.Forms.Button
$run.Location = New-Object System.Drawing.Size(133,430)
$run.Size = New-Object System.Drawing.Size(75,23)
$run.Text = "Run"
$run.Add_Click({ Invoke-Expression \\$pc\c$\users\$user\desktop\a\test.bat;

 })
 [System.Windows.Forms.MessageBox]::Show("Changes Saved. Now click RUN.") })

用于调用第二个 powershell 脚本的批处理文件:c:\Windows\System32\WindowsPowerShell\v1.0\powershell -ExecutionPolicy RemoteSigned - File "C:\Users\kam\Desktop\a\Powershell.ps1"

第二个脚本本身只是将文件复制到远程主机,并使用 write-host 命令显示输出。如果我自己运行这个脚本,它会显示输出,但是当我使用调用表达式运行它时,它会显示一个空白的 powershell 命令窗口。

任何帮助,将不胜感激。 第二个脚本运行时显示的图像

4

1 回答 1

0

已修复,因为我是调用bat文件来调用powershell,我只是直接调用powershell脚本并显示输出。

$run = New-Object System.Windows.Forms.Button
$run.Location = New-Object System.Drawing.Size(133,430)
$run.Size = New-Object System.Drawing.Size(75,23)
$run.Text = "Run"
$run.Add_Click({ Invoke-Expression \\$pc\c$\users\$user\desktop\a\powershell.ps1;

 })
 [System.Windows.Forms.MessageBox]::Show("Changes Saved. Now click RUN.") })
于 2012-11-25T18:40:21.907 回答