Deine (Test-)Codezeile liefert folgende MsgBox:
Beiträge von m_2015
-
-
Mach mal ein Screen von deiner MessageBox. Ich weiß gerade nicht wie du das genau meinst.
Hier ist ein Screenshot:
autoit.de/wcf/attachment/25266/
und ich meine das die Zeile:
[autoit]8.$mld = "Das bestehende Benutzerverzeichnis wurde umbenannt in:" & @CRLF & _
[/autoit]in der Bildschirmdarstellung der MsgBox eine Leerzeile erzeugt, jedoch die Zeile
[autoit]"OpenOffice wird jetzt neu gestartet, dabei wird automatisch ein neues OpenOffice-Benutzerverzeichnis:" & @CRLF & @CRLF & _
[/autoit]das nicht tut.
Ich kann das auch unter anderen Umständen nicht nachvollziehen sonder einzig bei dem geposteten Script und dem Aufruf des kompilierten Scripts mit Parametern.
Grüße Michael
-
Ich hatte eigentlich den vollständigen Code gepostet denn die Funktion help() habe ich irgendwo aus dem Internet kopiert und sie steht in keinem Zusammenhang mit der Funktion meines Skripts.
[autoit]
Hier jedoch ist der absolut vollständige Code im derzeitigen Zustand (ich probiere und teste herum, deswegen sieht der Code so aus):If $CmdLine[0] <> 2 Then help()
[/autoit][autoit][/autoit][autoit];$msg = $CmdLine[1]
[/autoit][autoit][/autoit][autoit]
;Msgbox(64, "Parameter 1", $CmdLine[1])
$msg2 = $CmdLine[2]
;Msgbox(0, "Parameter 1", $msg2)$mld = "Das bestehende Benutzerverzeichnis wurde umbenannt in:" & @CRLF & _
[/autoit][autoit][/autoit][autoit]
" " & CHR(34) & $CmdLine[1] & CHR(34) & @CRLF & @CRLF & @CRLF & _
"OpenOffice wird jetzt neu gestartet, dabei wird automatisch ein neues OpenOffice-Benutzerverzeichnis:" & @CRLF & @CRLF & _
CHR(34) & $CmdLine[2] & CHR(34) & @CRLF & "erstellt." & @CRLF & _
@CRLF & @CRLF & @CRLF & _
"Hinweis:" & @CRLF
Msgbox(64, "Openoffice wird neu gestartet", $mld)Func help()
[/autoit]
$msg = "Cleanup is a command line utility that deletes files older than a given age." & @CRLF & _
@CRLF & "Syntax:" & @CRLF & _
@CRLF & "CLEANUP ""path_and_mask"" [days_old] [/R] [/D]" & @CRLF & _
@CRLF & " path_and_mask I.E. C:\folder\sub-folder\*.* (use quotes if there are spaces)" & _
@CRLF & " days_old age of files to delete (default is 30)" & _
@CRLF & " /R recursive (default is non-recursive)" & _
@CRLF & " /D delete the files, without /D it just shows a list matching the mask" & @CRLF & _
@CRLF & "Examples:" & _
@CRLF & "CLEANUP ""C:\test fol\*.txt"" 60 /R /D" & _
@CRLF & "CLEANUP C:\test\*.log /R /D" & _
@CRLF & "CLEANUP C:\test\*.* 25 /D" & @CRLF
MsgBox(0, "Cleanup Help", $msg)
Exit
EndFunc ;==>helpGrüße Michael
-
Hallo,
ich bin AutoIt Anfänger und habe Probleme mir ein bestimmtes Verhalten der Msgbox zu erklären. Ich verwende folgenden Code:
Code
Alles anzeigenIf $CmdLine[0] <> 2 Then help() ;$msg = $CmdLine[1] ;Msgbox(64, "Parameter 1", $CmdLine[1]) $msg2 = $CmdLine[2] ;Msgbox(0, "Parameter 1", $msg2) $mld = "Das bestehende Benutzerverzeichnis wurde umbenannt in:" & @CRLF & _ " " & CHR(34) & $CmdLine[1] & CHR(34) & @CRLF & @CRLF & @CRLF & _ "xxx wird jetzt neu gestartet, dabei wird automatisch ein neues xxx-Benutzerverzeichnis:" & @CRLF & @CRLF & _ CHR(34) & $CmdLine[2] & CHR(34) & @CRLF & "erstellt." & @CRLF & _ @CRLF & @CRLF & @CRLF & _ "Hinweis:" & @CRLF Msgbox(64, "xxx wird neu gestartet", $mld)
Dabei wird zwischen "Das bestehende Benutzerverzeichnis wurde umbenannt in:" und der Ausgabe des Inhalts von $CmdLine[1] mit einem(!) "& @CRLF" eine sichtbare Leerzeile erzeugt, zwischen "xxx wird jetzt neu gestartet, dabei wird automatisch ein neues xxx-Benutzerverzeichnis:" und $CmdLine[2] geschieht das jedoch nur wenn ich 2 "& @CRLF" verwende. Gleiches gilt bei der Verwendung von "@CR".
Warum ist das so?
Hinweis:
die zweite, längere Zeile ("xxx wird jetzt neu gestartet, dabei wird automatisch ein neues xxx-Benutzerverzeichnis:") wird in der Msgbox am Bildschirm umgebrochen und AutoIt verhält sich dann scheinbar so als wenn quasi eines der "& @CRLF" für die umgebrochene Zeile 'in Rechnung' gestellt würde.Grüße Michael