【问题标题】:powershell displaying output from an invoke-espressionpowershell 显示调用表达式的输出
【发布时间】:2012-11-25 18:26:24
【问题描述】:

我有一个 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 - 文件“C:\Users\kam\Desktop\a\Powershell.ps1”

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

任何帮助将不胜感激。

【问题讨论】:

    标签: powershell invoke output


    【解决方案1】:

    已修复, 那是因为我是调用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.") })
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-11-14
      • 1970-01-01
      • 2011-10-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多