我有一个只适用于某些场景的功能。
- 它适用于 Powershell ISE,但是当我将相同的内容保存在 .Ps1 文件中并运行它时,它不起作用。
- 我有这个功能作为一个大脚本的一部分。当我在 Windows 7 上运行它但不能在 Windows Server 2008 R2 上运行时,它可以工作并打开窗口。
为什么?
带有函数及其调用的脚本是:
Function Get-SaveFileTxt($initialDirectory)
{
[System.Reflection.Assembly]::LoadWithPartialName("System.windows.forms") |
Out-Null
$SaveFileDialog = New-Object System.Windows.Forms.SaveFileDialog
$SaveFileDialog.initialDirectory = $initialDirectory
$SaveFileDialog.AddExtension = $true
$SaveFileDialog.DefaultExt = "txt"
$SaveFileDialog.filter = "Text Files (*.txt)| *.txt"
$SaveFileDialog.ShowDialog() | Out-Null
$SaveFileDialog.filename
}
Get-SaveFileTxt