fritzg1974 0 Geschrieben 15. Januar 2021 Melden Teilen Geschrieben 15. Januar 2021 Hallo zusammen, ich bin mir grade eine MP3 Verwaltung als Schule Project am bauen. Es soll eine MP3 beinhalten. Habe den Teil des Scripts auch soweit fertig. Allerdings wenn nach der Eingabe ins Suchfeld z.B. *Jackson* auf suchen klicke zeigt das Skript mir alle Dateien an die sich auf der HDD befinden. Hat eine von Euch vielleicht ne Idee bzw. Lösung? Die Abfrage befindet sich in Zeile 34. Habe sie grün markiert. Hier der Code: #MP3 Verwaltung [void] [System.Reflection.Assembly]::LoadWithPartialName("System.Drawing") [void][System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms") $objForm = New-Object System.Windows.Forms.Form $objForm.BackgroundImageLayout = 2 #$objForm.BackgroundImage =[System.Drawing.Image]::FromFile('C:\Users\fritz\Pictures\Milou Script.jpg') $objForm.StartPosition = "CenterScreen" $objForm.Size = New-Object System.Drawing.Size(1000,700) $objForm.Text ="Musik Verwaltung" $objForm.TopMost = "True" $Objlabel = New-Object System.Windows.Forms.Label $Objlabel.Size = New-Object System.Drawing.Size (100,30) $Objlabel.Location = New-Object System.Drawing.Size (30,40) $Objlabel.Text ="MP3 Suche" $Objlabel.BorderStyle = "Fixed3d" $objForm.Controls.Add($Objlabel) $ObjSuchBox = New-Object System.Windows.Forms.TextBox $ObjSuchBox.Size = New-Object System.Drawing.Size(100,150) $ObjSuchBox.Location = New-Object System.Drawing.Size(30,85) $ObjSuchBox.Text = "" $suche = $ObjSuchBox.Text $objForm.Controls.Add($ObjSuchBox) $SucheButton = New-Object System.Windows.Forms.Button $SucheButton.Location = New-Object System.Drawing.Point(30,110) $SucheButton.Size = New-Object System.Drawing.Size(100,30) $SucheButton.Text = 'Suche' #$SucheButton.DialogResult = [System.Windows.Forms.DialogResult]::OK$SucheButton.Add_Click({ gci "G:\" -Filter "*.$suche" -Force -EA Ignore -Recurse -File | select Fullname | ogv -Title "Dateien wählen" -PassThru }) #| %{start-process $_.Fullname}}) $ObjForm.AcceptButton = $SucheButton $Objform.Controls.Add($SucheButton) [void] $objForm.ShowDialog() Danke schonmal im voraus. Viele Grüße Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 15. Januar 2021 Melden Teilen Geschrieben 15. Januar 2021 (bearbeitet) Hallo fritzg1974 und willkommen im MCSEboard. Wenn Du Code postest, solltest Du den als Code formatieren, bitte. .... sieht besser aus und verhindert im Zweifel ungewollte Zeilenumbrüche oder automatische Formatierungen der Forensoftware, die man im Code aber nicht haben möchte. Ich würde Dir empfehlen, den Inhalt der Variablen, die Du benutzt, einfach mal zur Laufzeit des Skriptes , auszugeben. Idealerweise mittels Write-Debug oder Write-Verbose. ... zur Not einfach mit Write-Host. Dann weißt Du, ob überhaupt das bei Get-ChildItem ankommt, was Du erwartest. ... und noch ein dringender Tipp: In Skripten solltest Du generell keine Aliasse verwenden und den Code möglichst ausführlich und lesbar schreiben. Das gilt um so mehr, wenn Du Deinen Code in einem Forum anderen Leuten zeigst, die ihn lesen und verstehen sollen. EDIT: Es ist übrigens eine der Board-Regeln auf Cross-Postings hinzuweisen!!!! https://social.technet.microsoft.com/Forums/de-DE/082e54f3-9fec-42f8-b195-b68bd597d07c/datei-suche-mit-gci?forum=powershell_de#36250f73-b295-446e-93a9-d707b9a190b9 Vielleicht schaust Du Dir die nochmal an: Regeln und Nutzungsbedingungen bearbeitet 15. Januar 2021 von BOfH_666 1 Zitieren Link zu diesem Kommentar
daabm 1.354 Geschrieben 17. Januar 2021 Melden Teilen Geschrieben 17. Januar 2021 Ganz kurz... $suche = "*Jackson*" -Filter = "*.$Suche" ergibt *.*Jackson* Und *.* ist halt nun mal schon "alle Dateien"... Denkfehler - Dein "Suchfilter" muß in ein Where-Object nach dem Get-ChildItem. Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.