PowerShell - [решено] Powershell 4.0 Не назначается переменная при нажатии на кнопку.

Ответить
Аватара пользователя
Lesta

PowerShell - [решено] Powershell 4.0 Не назначается переменная при нажатии на кнопку.

Сообщение Lesta »

Здравствуйте.

Был скрипт, работал, когда у меня стоял PowerShell 2.0, поставил PowerShell 4.0, скрипт перестал нормально отрабатывать.

Сейчас ошибка такая, не назначается переменная после нажатия на кнопку.

вот код
читать дальше »




#Show the form to query mailBox dataBase

[System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms") | Out-Null

[System.Reflection.Assembly]::LoadWithPartialName("System.Drawing") | Out-Null



$Form = New-Object System.Windows.Forms.Form



$Form.width = 300

$Form.height = 150

$Form.Text = ”Выбор почтовой базы”



$DropDown = new-object System.Windows.Forms.ComboBox

$DropDown.Location = new-object System.Drawing.Size(100,10)

$DropDown.Size = new-object System.Drawing.Size(130,30)



ForEach ($Item in $DropDownArray) {

$cur_Item = $Item.name

$DropDown.Items.Add($cur_Item) | Out-Null

}

$DropDown.Items.Add("NOMAILBOX") | Out-Null





$Form.Controls.Add($DropDown)



$DropDownLabel = new-object System.Windows.Forms.Label

$DropDownLabel.Location = new-object System.Drawing.Size(10,10)

$DropDownLabel.size = new-object System.Drawing.Size(100,20)

$DropDownLabel.Text = "Bases"

$Form.Controls.Add($DropDownLabel)



$Button = new-object System.Windows.Forms.Button

$Button.Location = new-object System.Drawing.Size(100,50)

$Button.Size = new-object System.Drawing.Size(100,20)

$Button.Text = "Выбрать"

$Button.Add_Click({

$DropDown.SelectedItem.ToString()

$Choice = $DropDown.SelectedItem.ToString()

$Form.Close()

})

$form.Controls.Add($Button)



$Form.Add_Shown({$Form.Activate()})

$Form.ShowDialog() | Out-Null



$mailboxDatabase = $Choice

$mailboxDatabase
Аватара пользователя
Lesta

Re: PowerShell - [решено] Powershell 4.0 Не назначается переменная при нажатии на кнопку.

Сообщение Lesta »

$Choice = $DropDown.SelectedItem.ToString()

Заменить на:

$script:Choice = $DropDown.SelectedItem.ToString()



Спасибо Kazun'у с Technet'a



- Почему перестало работать? Где почитать?

- Проблема со времен v3,когда изменили механизм. Нигде, в документации об этом не пишут.
Ответить

Вернуться в «Скриптовые языки администрирования Windows»