Выходной вопрос Powershell при запуске форм - PullRequest
0 голосов
/ 23 января 2019

Когда я запускаю свой код формы, у меня есть различные объекты, которые добавляются в форму (кнопки, метки и т. Д.), Я присоединяю объекты к форме с помощью команды $Form1.Controls.Add([ObjectType]).

У меня вопрос: когда я запускаю свой код, я получаю мгновенную последовательность чисел в консоли и выводим диалоговое окно:

0 1 2 3 4 5 6 7 8 9 0 1 2

Когда после нажатия кнопки «Отправить» строка «OK» добавляется к числам, показанным выше

0 1 2 3 4 5 6 7 8 9 0 1 2 OK

Почему это происходит и как я могу удалить их или, по крайней мере, не показывать их. OK отображается после нажатия кнопки «Отправить». OK

Ответы [ 2 ]

0 голосов
/ 23 января 2019

Как заявил T-Me, для предотвращения генерации вывода при выполнении методов, которые вы используете [Void].

[Void]$Form1.Controls.Add([ObjectType])

Если ваш код все еще возвращает нежелательные данные, откройте сценарий в PowerShell ISE и выполняйте сценарий построчно (выберите строку и нажмите F8). Это поможет вам определить, какая строка кода генерирует вывод.

0 голосов
/ 23 января 2019

Некоторые действия, такие как .Add(), производят вывод.Чтобы предотвратить это, перенаправьте вывод в [void], добавив | Out-Null в конце строки или [void] непосредственно перед используемой переменной, например:

$foo.SomethingThatGeneratesOutput() | Out-Null

или

[void]$foo = SomethingThatGeneratesOutput
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...