Guten Morgen,
ich wollte eine Auswertung des freien Speicherplatzes bei uns in der Firma machen. Dazu benutze ich dieses Script:
Spoiler anzeigen
#include <Array.au3>
#include <File.au3>
Dim $pcname[1] = ["pcname"]
Global $log = @ScriptDir & "\log_HDD-Partition.csv"
_FileCreate($log)
Sleep(1500)
FileOpen($log, 1)
FileWrite($log, "PC" & ";" & "Freier Speicher C:" & @CRLF)
For $z = 0 To UBound($pcname) - 1
If FileExists("\\" & $pcname[$z] & "\d$\partitionen.ini") Then
Local $hdd = "\\" & $pcname[$z] & "\d$\partitionen.ini"
Dim $ahdd
_FileReadToArray($hdd, $ahdd)
For $j = 0 to 1
_ArrayDelete($ahdd, $j)
Next
For $y = 0 To UBound($ahdd) - 1
$ahddfrei = StringSplit($ahdd[$y], 'frei:', 1)
$isarray = IsArray($ahddfrei)
if $isarray <1 then ExitLoop
For $i = 1 To 2
_ArrayDelete($ahddfrei, 0)
Next
;_ArrayDisplay($ahddfrei)
FileWrite($log, $pcname[$z] & ";" & $ahddfrei[$y] & @CRLF)
Next
EndIf
Next
FileClose($log)
Dazu sei gesagt, dass in den .ini's die Partitionen drinnenstehen, ich aber nur die Größe von c: brauche. So steht es in der .ini drin:
Spoiler anzeigen
C:, NTFS, 125,5 GB, frei: 97,4 GB
D:, NTFS, 23,5 GB, frei: 21,9 GB
Das Script funktioniert soweit einwandfrei, bricht aber dann nachdem ca. 1/4 des PC's abgearbeitet wurden, ab. Die Fehlermeldung besagt: Subscript used with non-Array variable.
Wundern tut mich das, dass er echt am Anfagn einwandfrei läuft. Habe dann da die Abfrage mit "ob Array, oder nicht?" eingebaut, aber irgendwie funktioniert das nicht wie es oll :pinch: