Hallo.
Ich habe ein Problem mit einer ArrayList.
Meine Funktion funtioneirt solange durch die Funktion mehrere Dateien gefunden werden, wenn aber nur eine Datei gefunden wird bekomme ich immer einen Fehler.
Das ist der Bereich in dem die ArrayList gefüllt wird (bzw. ein Auszug):
...
[System.Collections.ArrayList]$TableData = @(Get-ChildItem $FullDateFolders -Filter $filter -File -Recurse) |
where-object {($_.LastAccessTime -le (get-date).AddMinutes($DelTime)) -and ($_.Fullname -like $filter1)} |
ForEach-Object `
-Begin {$i=0} `
-Process {
$i++
$TextBox_Output.AppendText([System.Environment]::NewLine + "# Add: " + $_.FullName) #TODO Nur für TEST
write-host "Datei-Nr.: $i -- " $_.Name #TODO Nur für TEST
$_CopyFullPath = (($_.FullName -split '\\') | Select -Last 3) -join '\'
$_CopyFolder = (($_.FullName -split '\\') | Select -Last 3 | Select -SkipLast 1) -join '\'
$_DisplayPath = (($_.FullName -split '\\') | Select -Last 4) -join '\'
$_NumberOfParts = (Select-String -path $_ -pattern 'K0007').count
$_LastDir = (Split-Path $_.Directory -Leaf)
$_
...
Wichtiger ist wahrscheinlich die Fehlermeldung:
Der Wert "@{Maschine=50151; Name=schleifen.dfq; Teile=0; LastWriteTime=13.07.2022 18:57:52; DisplayPath=20220713_060501\MFU\50151\schleifen.dfq;
CopyFullPath=MFU\50151\schleifen.dfq; CopyFolder=MFU\50151; FullName=E:\Powershell_Skripts\99-Ordner_Test\Source\20220713_060501\MFU\50151\schleifen.dfq}" kann nicht
in den Typ "System.Collections.ArrayList" konvertiert werden. Fehler: "Der Wert "@{Maschine=50151; Name=schleifen.dfq; Teile=0; LastWriteTime=13.07.2022 18:57:52;
DisplayPath=20220713_060501\MFU\50151\schleifen.dfq; CopyFullPath=MFU\50151\schleifen.dfq; CopyFolder=MFU\50151;
FullName=E:\Powershell_Skripts\99-Ordner_Test\Source\20220713_060501\MFU\50151\schleifen.dfq}" vom Typ "Selected.System.IO.FileInfo" kann nicht in den Typ
"System.Collections.ArrayList" konvertiert werden."
Kann mit dieser Fehlermeldung vielleicht jemand was Anfangen und mir einen Tip für die Fehlersuche geben?