我正在尝试使用 PowerShell 表单设置任务序列变量。
设置任务序列变量和控制 ProgressUI 很简单,但是当涉及到表单本身时,它就不会出现。
将我的脚本减少到最低限度,这四行代码在从 PowerShell 运行时会打开一个空白表单,但是从 MDT 任务序列操作“运行 PowerShell 脚本”运行相同的脚本不会显示该表单,并且该任务序列被阻止观点。我的猜测是表单是打开的,但只是不可见。
[void] [System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms")
$form = New-Object System.Windows.Forms.Form
$form.Add_Shown({$form.Activate()})
$dialogResult = $form.ShowDialog()
偶然我发现,如果我在 ShowDialog() 调用之前的任何地方添加以下行,表单就会正确显示(就像一个空的 GridView 一样)
"" | Out-GridView
在线查看此示例http://www.scconfigmgr.com/2015/07/17/windows-forms-powershell-gui-template/,我看不到实质性差异并且设置额外的 $form 属性没有没有帮助。
任何人都可以对此提出任何建议吗?
我正在使用 MDT 6.3.8443.1000