Kannst du es mal das /c durch /k ersetzen und schauen ob du im CMD eine Fehlermeldung bekommst?
Beiträge von Moombas
-
-
Hmm, dann bin ich aktuell ratlos warum die Verbindung dort kappt.
Ich hätte dann maximal die idee fürn workaround (Powershell oder cmd nutzen um es lokal in eine temporäre Datei zu schreiben) aber nichts für eine Lösungsfindung

-
Schon mal versucht wie in der Hilfe geschrieben mit process waitclose zzu arbeiten und dann den ganzen output zu holen?
AutoItLocal $iPID = Run(@ComSpec & ' /C DIR "' & $sFilePath & $sFilter & '" /B /A-D /S', $sFilePath, @SW_HIDE, $STDOUT_CHILD) ; If you want to search with files that contains unicode characters, then use the /U commandline parameter. ; Wait until the process has closed using the PID returned by Run. ProcessWaitClose($iPID) ; Read the Stdout stream of the PID returned by Run. This can also be done in a while loop. Look at the example for StderrRead. Local $sOutput = StdoutRead($iPID)Und ja, ich weiß das es eigentlich auch mit dem wihle gehen sollte.
-
Erstmal ausgiebig testen bevor du das machst

Bei meinen QuD kann sich auch mal ein (Denk-)Fehler einschleichen

btw.: time hast du doppelt drinne (vorne und hinten) in deinem log
-
Hier das QuD sample:
AutoIt
Alles anzeigenOpt('MustDeclareVars', 1) #include <Array.au3> Global $aI[4] = [1, 2, 3, 4] Global $String = '2024/06/23 18:02:36 - action=login pcname=N210708_b mac=5C61994A3157 ip=192.168.178.22 time=18:02:36' & @CRLF & _ '2024/06/23 18:06:55 - action=logout pcname=N210708_B mac=5C61994A3157 ip=192.168.178.21 time=18:06:55' $String = StringSplit($String, @CR) $String = Transform($String) _ArraySort_MultiColumn($String, $aI, 0, 0) _ArrayDisplay($String) Func Transform($aText) Local $aReturn[0][5], $Name, $IP For $Row = 1 to $aText[0] $IP = Stringsplit(StringRegExp($aText[$Row], '\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}', $STR_REGEXPARRAYMATCH)[0], '.') _ArrayAdd($aReturn, StringRegExp($aText[$Row], 'pcname=(\S{6,})', $STR_REGEXPARRAYMATCH)[0] & '|' & Number($IP[1]) & '|' & Number($IP[2]) & '|' & Number($IP[3]) & '|' & Number($IP[4])) Next Return $aReturn EndFunc ; #FUNCTION# ============================================================================= ; Name.............: _ArraySort_MultiColumn ; Description ...: sorts an array at given colums (multi colum sort) ; Syntax...........: _ArraySort_MultiColumn(ByRef $aSort, ByRef $aIndices) ; Parameters ...: $aSort - array to sort ; $aIndices - array with colum indices which should be sorted in specified order - zero based ; $oDir/$iDir - sort direction - if set to 1, sort descendingly else ascendingly ; Author .........: UEZ ; Version ........: v0.70 build 2013-11-20 Beta ; ========================================================================================= Func _ArraySort_MultiColumn(ByRef $aSort, ByRef $aIndices, $oDir = 0, $iDir = 0) If Not IsArray($aIndices) Or Not IsArray($aSort) Then Return SetError(1, 0, 0) ;checks if $aIndices is an array If UBound($aIndices) > UBound($aSort, 2) Then Return SetError(2, 0, 0) ;check if $aIndices array is greater the $aSort array Local $1st, $2nd, $x, $j, $k, $l = 0 For $x = 0 To UBound($aIndices) - 1 ;check if array content makes sense If Not IsInt($aIndices[$x]) Then Return SetError(3, 0, 0) ;array content is not numeric Next If UBound($aIndices) = 1 Then Return _ArraySort($aSort, $oDir, 0, 0, $aIndices[0]) ;check if only one index is given _ArraySort($aSort, $oDir, 0, 0, $aIndices[0]) Do $1st = $aIndices[$l] $2nd = $aIndices[$l + 1] $j = 0 $k = 1 While $k < UBound($aSort) If $aSort[$j][$1st] <> $aSort[$k][$1st] Then If $k - $j > 1 Then _ArraySort($aSort, $iDir, $j, $k - 1, $2nd) $j = $k Else $j = $k EndIf EndIf $k += 1 WEnd If $k - $j > 1 Then _ArraySort($aSort, $iDir, $j, $k, $2nd) $l += 1 Until $l = UBound($aIndices) - 1 Return 1 EndFunc ;==>_ArraySort_MultiColumn -
Naja das splitten ist halt nochmal ein separater Schritt.
Ich schaue das ich ein QuD dafür bereit stelle auf basis deines oberen eintrags.
-
Denk dran, wenn du die IP splittest das beim Eintragen ins Array gleich explizit in eine Zahl umzuwandeln, damit er nicht nachher meint es wäre text, sonst kommt nämlich nicht das richtige Ergebnis raus (z.B. 100 nach der 1 aber vor der 2 etc.)
-
Ich würde die IP in ihre 4 Teile gesplittet in ein Array legen und dann sortieren mit der Funktion von UEZ :
AutoIt
Alles anzeigenOpt('MustDeclareVars', 1) #include <Array.au3> Global $aIPs[10][5] = [ _ [192, 168, 23, 145, "Büro 101"], _ [ 10, 0, 15, 87, "Empfang"], _ [172, 16, 78, 209, "Besprechungsraum"], _ [192, 168, 1, 3, "Buchhaltung"], _ [ 10, 10, 55, 201, "Marketing"], _ [172, 20, 100, 50, "Entwicklung 1"], _ [192, 168, 0, 11, "Entwicklung 2"], _ [ 10, 1, 1, 254, "Personalabteilung"], _ [172, 31, 255, 1, "Kantine"], _ [192, 168, 100, 100, "Serverraum"]] Global $aI[4] = [0, 1, 2, 3] _ArrayDisplay($aIPs, 'Before:') _ArraySort_MultiColumn($aIPs, $aI, 0, 0) _ArrayDisplay($aIPs, 'After:') ; #FUNCTION# ============================================================================= ; Name.............: _ArraySort_MultiColumn ; Description ...: sorts an array at given colums (multi colum sort) ; Syntax...........: _ArraySort_MultiColumn(ByRef $aSort, ByRef $aIndices) ; Parameters ...: $aSort - array to sort ; $aIndices - array with colum indices which should be sorted in specified order - zero based ; $oDir/$iDir - sort direction - if set to 1, sort descendingly else ascendingly ; Author .........: UEZ ; Version ........: v0.70 build 2013-11-20 Beta ; ========================================================================================= Func _ArraySort_MultiColumn(ByRef $aSort, ByRef $aIndices, $oDir = 0, $iDir = 0) If Not IsArray($aIndices) Or Not IsArray($aSort) Then Return SetError(1, 0, 0) ;checks if $aIndices is an array If UBound($aIndices) > UBound($aSort, 2) Then Return SetError(2, 0, 0) ;check if $aIndices array is greater the $aSort array Local $1st, $2nd, $x, $j, $k, $l = 0 For $x = 0 To UBound($aIndices) - 1 ;check if array content makes sense If Not IsInt($aIndices[$x]) Then Return SetError(3, 0, 0) ;array content is not numeric Next If UBound($aIndices) = 1 Then Return _ArraySort($aSort, $oDir, 0, 0, $aIndices[0]) ;check if only one index is given _ArraySort($aSort, $oDir, 0, 0, $aIndices[0]) Do $1st = $aIndices[$l] $2nd = $aIndices[$l + 1] $j = 0 $k = 1 While $k < UBound($aSort) If $aSort[$j][$1st] <> $aSort[$k][$1st] Then If $k - $j > 1 Then _ArraySort($aSort, $iDir , $j, $k - 1, $2nd) $j = $k Else $j = $k EndIf EndIf $k += 1 WEnd If $k - $j > 1 Then _ArraySort($aSort, $iDir, $j, $k, $2nd) $l += 1 Until $l = UBound($aIndices) - 1 Return 1 EndFunc -
Damn, ich hasse es wenn Dokumentationen abweichen, wobei gewisse Speichertypen heutzutage wohl kaum bis garnicht mehr auftreten.
Alles was älter ist als DDR3 würde ich nichtmal mehr anfassen

-
Nein da hast du recht, da sollte hipfzwirgel definitv nochmal drüber schauen

-
Danke @Musashi die hatte ich leider nicht gefunden.
hipfzwirgel Jetzt kannst du damit deine Liste vervollständigen

-
Nice, evtl. gibts ja auch irgendwo eine aktuellere Doku über die möglichen Werte als das was ich da gefunden habe

-
Versuch es mal mit dem SMBIOSMemoryType anstatt dem MemoryType (beides in Win32_PhysicalMemory enthalten).
Bei mir gibt SMBIOSMemoryType 26 aus, was meines Wissens für DDR4 steht, wobei MemoryType 0 für unknown ausgibt.
Seite 98 von hier: https://www.dmtf.org/sites/default/…P0134_3.2.0.pdf
Keine Ahnung was er bei meinem Heim-PC machen würde, der hat shcon DDR5, das taucht hier noch garnicht auf

-
Und das ist nicht nur beim programmieren so.
Andere markieren in Excel schön alles per Hand wo ich dann per bedingter Formatierung gleich alles durchrasseln lasse

-
Ich bevorzuge generell auch die Nutzung von ' wenn " im String vor kommen anstatt """ um eben diese Verwirrung auszuschließen.
-
Bin mir nicht 100%ig sicher, da ich nicht sicher bin welche dieser Variablen nun aus deinem psscript sind (und somit mit in die "" sollen) und welche aus Autoit sind (und somit nicht mit in die "" sollen). Aber auf Basis wie du es oben geschrieben hast würde ich es so machen:
AutoIt'$psexecArgs = "-u " + $username + " -p " + $password + " \\" + $computer + " ' & $parameter & ' " + $batchFilePath + " " + "' & $Zparams & '"' & @CRLF & _Ergebnis:
$psexecArgs = "-u " + $username + " -p " + $password + " \\" + $computer + " Deine-$parameter " + $batchFilePath + " " + "Deine-$Zparams"
->
$psexecArgs = "-u " + USERNAME + " -p " + PASSWORD + " \\" + COMPUTER + " Deine-$parameter " + C:/PATH/ + " " + "Deine-$Zparams"
->
-u USERNAME -p PASSWORD \\COMPUTER Deine-$parameter C:/PATH/ Deine-$Zparams
-
Alles anzeigen
Was mich immer faziniert das wir EDV-Fuzzis für alles ein Programm schreiben müssen
Da ich aber auch so ticke verstehe ich das voll und ganz...
Vielleicht ein paar Anmerkungen:
Man kauft ja immer eine Packung und dort stehen die m2 oben (z.B.: 1.92m2)....da wäre jetzt noch nett wenn die aufgerundet gleich die Packungsanzahl hätte.
Fehlerquote...also wie oft vernichte ich durch vermessen, verschneiden einen Teil; Nichts ist ärgerlicher wenn es sich um 1 ode 2 Bretter (Dielen) wegen der eigenen Unfähigkeit nicht ausgeht. Was dazupasst: Räume sind nie quatratisch und eine Wand ist nie gerade, ganz besonders im Altbau...
Bei mehrern Räumen gibt es Türen und damit einen Durchgang. Das sollte man auch beachten. Ich hatte mal so eine Kaminwand mit Durchgang da hat gleich 1m2 Boden reingepasst...
lg
RacerDeswegen nimmt man ja bis zu 10% zusätzlich für Verschnitt (und sonstiges was du hier erwähnt hast). Sollte dann viel zu viel über bleiben, nimmt ein guter Händler die ungeöffneten Reste wieder zurück, sofern es keine Sonderausführung ist oder vorher ein Abverkauf war. Wobei ich immer empfehle 1-2 Pkg. zur Seite zu legen

-
casi4712 : Du ignorierst ja auch die ganze Zeit was ich geschrieben habe...
$psexecArgs = "-u $username -p $password \\" + $computer + " -i "c:\Program Files\VideoLAN\VLC\vlc.exe" -Idummy " + $batchFilePath
Die beiden unterstrichenen habe ich dir so NICHT angegeben, sondern dort müssten bei meinem Beispiel ' rein... aber egal jetzt...
-
Deswegen der Hinweis: "orientiert sich dabei an der Spalte links davon"

Deswegen (und wegen div. andrer Sachen) gibt es bei mir so gut wie nie Tabellen wo Felder nicht gefüllt sind

-
nein das ist nicht richtig., ich habe dir oben das Beispiel mit dran gepackt gehabt, musste aber dennoch was korrigieren. Also deine Zeile 36 müsste so aussehen:
Return "' " & $params & ' "' & $splayer & '"' & " -Idummy '" -> Return ' -i "c:\Program Files\VideoLAN\VLC\vlc.exe" -Idummy '