2015-10-06 7 views
1

Я пытаюсь вставить курсор моего коллеги в верхний левый угол его Дисплея. Я делаю это с петлей do until. Единственный способ нарушить сценарий должен быть, когда $ FilePath имеет больше дочерних элементов, чем «5». Любая идея, почему это не работает?До тех пор, пока в Windows Powershell

$FilePath = "I:\TRANSFER" 
$test = Get-ChildItem $FilePath 
do {[Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms") 
[System.Windows.Forms.Cursor]::Position = New-Object System.Drawing.Point(0,0) 
$test.count} 
until ($test.count -gt '5') 

ответ

2

ok Я получил его. Я не могу поместить Get-ChildItem в переменную, потому что он учитывается только один раз. Если я делаю это с помощью команд, он работает.

$FilePath = "I:\TRANSFER" 
[Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms") 

do { 
    [System.Windows.Forms.Cursor]::Position = New-Object System.Drawing.Point(0,0) 
    } 

until ((Get-ChildItem $FilePath).count -gt '5') 
+1

Едва ли все объекты обновляются после хранения в переменных. Еще одним примером является Get-Service. Освежающий все время будет огромным истощением ресурсов, поэтому он оставляет его вам, чтобы обновить то, что вам нужно, когда вам это нужно. –