Wie kann ich die korrekte Verwendung der FolderBrowserDialog in Powershell
So, ich bin noch ziemlich neu in Powershell, und ich bin versucht, zu schreiben ein Skript, das dem Benutzer ermöglicht, wählen Sie eine Datei oder einen Ordner und dann wieder die Sicherheits-Berechtigungen für den besagten Ordner/Datei. Das problem ist, ich kann nicht scheinen, um den Pfad der Datei zu erfassen als eine variable, die später verwendet werden. Hier ist, was ich habe, so weit:
Function Get-Folder($initialDirectory)
{
[System.Reflection.Assembly]::LoadWithPartialName("System.windows.forms")
$foldername = New-Object System.Windows.Forms.FolderBrowserDialog
$foldername.rootfolder = "MyComputer"
$foldername.ShowDialog()
if($foldername.ShowDialog() -eq "OK") {
$folder += $foldername.SelectedPath
}
}
Vielleicht bin ich auch Weg, aber es wird sich ziehen, bis das Fenster zur Auswahl einer Datei oder einem Ordner und lässt mich wählen Sie zweimal und dann nicht legen Sie die variable als den Pfad der Datei. Wieder, ich bin ziemlich neu auf diese Art der Sache, so konnte ich völlig falsch sein, aber jede Hilfe wäre äußerst hilfreich.
Dank!
InformationsquelleAutor Ben_the_Terrible | 2014-09-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den Ordner-Selektor-Fenster zeigt doppelt, weil Sie zwei Anrufe zu
$foldername.ShowDialog()
. Entfernen Sie der erste, und lassen Sie nur das eine imif
.Ich versuchte Ihren code, und bin sicher, dass
$folder
variable ist in der Tat gesetzt. Wenn Sie denken, dass es nicht gesetzt ist, dann machst du etwas falsch. Zum Beispiel, sich bewusst sein, dass es nur sichtbar in IhrerGet-Folder
Funktion. Wenn Sie brauchen, um verwenden Sie es außerhalb der Funktion, sollten Sie es zurückgeben (return $folder
) und weisen Sie es auf eine variable außerhalb der Funktion. Zum Beispiel:Diese Weise haben Sie Ihre ausgewählten Ordner in der
$a
variable.InformationsquelleAutor Vasily Alexeev
Müssen Sie hinzufügen "| Out-Null" am Ende der Zeile
"[System.Reflexion.Assembly]::LoadWithPartialName("System.windows.Formen")"
ansonsten gibt es eine Reihe von info-zurückgegeben Bekommen-Ordner, den Sie nicht wollen
Cheers, Garth
InformationsquelleAutor Garth