在 Powershell 脚本中导入 .Net 库时出现问题



我正在尝试使用powershell创建一个GUI页面。该脚本适用于Powershell版本4.0。但是当尝试在 poweshell 版本 3.0 中执行它时它会引发异常

$return = button "Enter Parameters" "Enter Domain" "Enter User" "Enter Server" 
function button ($title,$domain, $user, $Server) { 
[void][System.Reflection.Assembly]::LoadWithPartialName( "System.Windows.Forms")  
[void][System.Reflection.Assembly]::LoadWithPartialName( "Microsoft.VisualBasic")  

$form = New-Object "System.Windows.Forms.Form"; 
$form.Width = 500; 
$form.Height = 150; 
$form.Text = $title; 
$form.StartPosition = [System.Windows.Forms.FormStartPosition]::CenterScreen; 
$textLabel1 = New-Object "System.Windows.Forms.Label"; 
$textLabel1.Left = 25; 
$textLabel1.Top = 15; 

例外:

At C:Usersrights.ps1:16 char:35
+ [void][System.Reflection.Assembly]LoadWithPartialName( System.Windows.Forms)
+                                   ~~~~~~~~~~~~~~~~~~~
Unexpected token 'LoadWithPartialName' in expression or statement.
At C:Usersrights.ps1:17 char:35
+ [void][System.Reflection.Assembly]LoadWithPartialName( Microsoft.VisualBasic)
+                                   ~~~~~~~~~~~~~~~~~~~
Unexpected token 'LoadWithPartialName' in expression or statement.
At C:Usersrights.ps1:23 char:67
+     $form.StartPosition = [System.Windows.Forms.FormStartPosition]CenterScreen;
+                                                                   ~~~~~~~~~~~~

有人可以帮我解决这个问题吗?

要在命名空间中使用方法,您需要在 ] 末尾加上双引号。 例如 [System.Windows.Forms.FormStartPosition]::CenterScreen()

最新更新