Ich habe von AspirinJunkie den Tip bekommen mein "Problemchen" erst mal hier zu erörtern bevor man das an die Macher von Autoit sendet.
Vorab Nein es ist kein riesen Problem und ja natürlich kann man es umgehen!
Der Reihe nach:
@ScriptDir --> liefert den Pfad zum Script / der *.exe
ABER
sofern das Programm im Wurzelverzeichnis F:\test.exe liegt wird F:\ zurückgegeben. Liegt das Programm aber in einem Ordner z.B. F:\Ordner\test.exe wird F:\Ordner zurückgegeben.
Wenn man nun die Pfadangaben ergänzen will mus man im einen Fall ein & "\test.ini" im anderen Fall ein & "test.ini" hinzufügen.
Natürlich geht das auch anders. Und ja es mag noch 47 Mio Möglichkeiten geben. Ich finde man könnte das mal so vereinheitlichen dass die Antworrt von @ScriptDir einheitlich ist.
Z.Z löse ich das so, und ja es macht keine Arbeit das immer ganz vorne mit dazu zu kopieren....aber elegant ist es nicht. Und wenn das zufällig mit irgendwelchen Windooof gepflogenheiten übereinstimmt - macht trotzdem keinen Sinn!
; --- Pfaden Anfang ----
if stringlen(@ScriptDir) <= 3 Then
$Start_dir = Stringleft (@ScriptDir, 2)
Else
$Start_dir = @ScriptDir
EndIf
MsgBox (0, "Start Dir", $Start_dir);------ Pfaden Ende
; Pfaden muss sein, da dder Befehl @ScriptDir z.B. bei F -> F:\ also mit dem Schrägen liefert bei F:\test -> eben den Schrägen nicht liefert. Damit würden Pfadzusammensetzungen unterschiedlich ausfallen.
; Eine Autoit Ungereimtheit, die man mal beseitigen könnte.
LG
Peter