hallo!
ich hab mir da ma eine kleine funktion geschrieben die dateien umbenennen soll, das geht zwar auch mit filecopy das dauert bei großen dateien aber sehr lange!So meine funktion tut es soweit auch aber
Spoiler anzeigen
Func _rename($sourcename,$destname)
Dim $folder = ""
If Not FileExists($sourcename) Then SetError(1)
$dir = StringSplit($sourcename,"\")
$dest = StringSplit($destname,"\")
For $i = 1 To $dir[0]-1 Step 1
$folder = $folder&$dir[$i]&"\"
Next
Opt("WinTitleMatchMode",2)
ShellExecute("cmd.exe")
WinWaitActive("cmd.exe")
WinActivate("cmd.exe")
Send("cls")
Send("{ENTER}")
Send("CD "&$folder)
Sleep(100)
Send("{ENTer}")
Sleep(100)
Send("ren "&$Dir[$Dir[0]]&" "&$dest[$dest[0]])
Send("{ENTER}")
If Not FileExists($folder&"\"&$dest[$dest[0]]) Then SetError(2)
WinKill("cmd.exe")
EndFunc
, ich möchte, dass das ganze im hintergrund läuft also
nicht sichtbar ist ich hab das ma so versucht:
Spoiler anzeigen
ShellExecute("cmd.exe","","",""@SW_HIDE)
[/autoit]da bleibt das script dann bei WinWaitActive("cmd.exe") stecken!
weiß einer wie ich dass trotz @SW_HIDE realisieren kann oder gibt es da noch eine bessere möglichkeit?
mfg DjBasslord