Hi,
ich erstelle mir eine Liste der auf dem Server verfügbaren Drucker und speichere sie in einer .txt ab:
Spoiler anzeigen
...
$objWMIService = ObjGet("winmgmts:\\" & $strComputer & "\root\CIMV2")
$colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_Printer", "WQL", $wbemFlagReturnImmediately + $wbemFlagForwardOnly)
If IsObj($colItems) then
For $objItem In $colItems
$Output = $Output & $objItem.Name & @CRLF
Next
FileWrite(@TempDir & "\Win32_Printer.TXT", $Output )
Else
Msgbox(0,"WMI Output","No WMI Objects Found for class: " & "Win32_Printer" )
Endif
Jetzt ist jedesmal wenn die Datei erstellt wird, die letzte Zeile leer (ein @CRLF ?). Sieht man erst, wenn man die Datei mit nem Editor öffnet.
Wie kann ich das umgehen, bzw. die letzte Zeile entfernen.
Wenn ich mir die einzelnen Drucker in der For .. IN - Schleife in ein Array schreibe und dann das Array mittels _FileWriteFromArray ist auch wieder diese letzte leere Zeile vorhanden.
Ebenso, wenn ich mittels _FileWriteToLine($sfile, _FileCountLines($sFile), "",1) die letzte Zeile "leere/überschreibe" ist sie vorhanden.
Auch wenn ich per FileOpen mit Param = 2 die Datei erstelle (wird durch die 2 ja neu erstellt/gelöscht) ist diese "göttliche Geisterzeile" da.
Da wird der Hund in der Pfanne verrückt, oder war ich das ?!?