当我$name = Read-Host 'What is your name?'
在 Powershell V1 中执行此操作时,它会在弹出窗口中询问问题。
使用 Powershell V3 时,它只会在控制台窗口中询问。有没有办法强制Read-Host
弹出问题?
答案1
解决这一问题的方法有很多。其中一种方法如下:
[void][System.Reflection.Assembly]::LoadWithPartialName('Microsoft.VisualBasic')
$name = [Microsoft.VisualBasic.Interaction]::InputBox("Enter your name", "Name", "$env:username")
利用[void] [System.Reflection.Assembly]::LoadWithPartialName("System.Drawing")
和
[void] [System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms")
程序集,您可以像使用 C# 一样制作功能齐全的自定义输入框。