Sorry, dass ich den Thread nochmal "entstauben" muss, aber ich hab ne Frage zu Jam00's Programm.
Spoiler anzeigen
#include <GuiListView.au3>
#include <Array.au3>
$INI = @ScriptDir & "\Konfig.ini"
#region ### START Koda GUI section ### Form=
$FORM1 = GUICreate("Datei-Umbenner", 515, 476, 282, 277, 0x00040000)
$LISTVIEW1 = GUICtrlCreateListView("Dateiname|Neuer Name|Pfad", 2, 2, 510, 326)
GUICtrlSendMsg(-1, 4126, 0, 150)
GUICtrlSendMsg(-1, 4126, 1, 150)
GUICtrlSendMsg(-1, 4126, 2, 200)
$INPUT1 = GUICtrlCreateInput(IniRead ($INI,"FileOpen","IN1",""), 2, 358, 509, 21)
$BUTTON1 = GUICtrlCreateButton("Hinzufügen", 436, 330, 75, 25, 0)
$BUTTON2 = GUICtrlCreateButton("Entfernen", 361, 330, 75, 25, 0)
$LABEL1 = GUICtrlCreateLabel("Zu ersetzender Text:", 2, 340, 102, 17)
$BUTTON3 = GUICtrlCreateButton("Ersetzen", 436, 422, 75, 25, 0)
$INPUT2 = GUICtrlCreateInput(IniRead ($INI,"FileOpen","IN2",""), 3, 400, 509, 21)
$LABEL2 = GUICtrlCreateLabel("Ersetzen mit:", 3, 382, 64, 17)
$BUTTON4 = GUICtrlCreateButton("Liste Leeren", 286, 330, 75, 25, 0)
$BUTTON5 = GUICtrlCreateButton("Beispiel anzeigen", 336, 422, 100, 25, 0)
$Check = GUICtrlCreateRadio ("Dateien",20,425)
GUICtrlSetState (-1,1)
GUICtrlCreateRadio ("Ordner",80,425)
GUISetState(@SW_SHOW)
#endregion ### START Koda GUI section ### Form=
GUIRegisterMsg(0x0024, "MY_WM_GETMINMAXINFO")
While 1
$NMSG = GUIGetMsg()
Switch $NMSG
Case -3
Exit
Case $BUTTON4
_GUICTRLLISTVIEW_DELETEALLITEMS($LISTVIEW1)
Case $BUTTON2
_GUICTRLLISTVIEW_DELETEITEMSSELECTED($LISTVIEW1)
Case $BUTTON1
_HINZUFUEGEN()
Case $BUTTON5
_BEISPIEL()
Case $BUTTON3
_UMBENENNEN()
EndSwitch
WEnd
Func _HINZUFUEGEN()
If GUICtrlRead ($Check) = 1 Then
$FILE = FileOpenDialog("Dateiauswahl", IniRead($INI, "FileOpen", "Pfad", ""), "Alle (*.*)", 4)
If @error Then Return
$SFILE = StringSplit($FILE, "|")
If $SFILE[0] > 1 Then
IniWrite($INI, "FileOpen", "Pfad", $SFILE[1])
If $SFILE[0] > 0 Then
For $1 = 2 To $SFILE[0]
GUICtrlCreateListViewItem($SFILE[$1] & "||" & $SFILE[1], $LISTVIEW1)
Next
EndIf
Else
$SFILE = StringSplit($FILE, "\")
$Pfad1 = StringLeft ($FILE,StringLen ($FILE) - StringLen ($SFILE[$SFILE[0]]))
GUICtrlCreateListViewItem($SFILE[$SFILE[0]] & "||" & $Pfad1, $LISTVIEW1)
IniWrite($INI, "FileOpen", "Pfad", $Pfad1)
EndIf
Else
$Ordner = FileSelectFolder ("Ordnerauswahl",Default,0,IniRead ($INI,"FileOpen","Pfad",@DesktopDir))
If @error Then Return
$Filter = InputBox ("Dateiendung","Gib die Dateiendung an" & @CRLF & "Beispiel: *.mp3",IniRead ($INI,"FileOpen","Filter","*.mp3"))
If @error Then Return
IniWrite ($INI,"FileOpen","Filter",$Filter)
$First = FileFindFirstFile ($Ordner & "\" & $Filter)
While 1
$FILE = FileFindNextFile($First)
If @error Then ExitLoop
$SFILE = StringSplit ($FILE,"\")
$Pfad = StringLeft ($FILE,StringLen ($FILE) - StringLen ($SFILE[$SFILE[0]]) -1)
GUICtrlCreateListViewItem($SFILE[$SFILE[0]] & "||" & $Pfad, $LISTVIEW1)
Wend
EndIf
EndFunc
Func _BEISPIEL()
$TEXT = GUICtrlRead($INPUT1)
$ER = GUICtrlRead($INPUT2)
IniWrite ($INI,"FileOpen","IN1",$TEXT)
IniWrite ($INI,"FileOpen","IN2",$ER)
For $1 = 0 To _GUICTRLLISTVIEW_GETITEMCOUNT($LISTVIEW1)
_GUICTRLLISTVIEW_SETITEMTEXT($LISTVIEW1, $1, StringReplace(_GUICTRLLISTVIEW_GETITEMTEXT($LISTVIEW1, $1, 0), $TEXT, $ER), 1)
Next
EndFunc
Func _UMBENENNEN()
_BEISPIEL()
For $1 = 0 To _GUICTRLLISTVIEW_GETITEMCOUNT($LISTVIEW1)
FileMove(_GUICTRLLISTVIEW_GETITEMTEXT($LISTVIEW1, $1, 2) & "\" & _GUICTRLLISTVIEW_GETITEMTEXT($LISTVIEW1, $1, 0), _GUICTRLLISTVIEW_GETITEMTEXT($LISTVIEW1, $1, 2) & "\" & _GUICTRLLISTVIEW_GETITEMTEXT($LISTVIEW1, $1, 1))
Next
_GUICTRLLISTVIEW_DELETEALLITEMS($LISTVIEW1)
EndFunc
Func MY_WM_GETMINMAXINFO($HWND, $MSG, $WPARAM, $LPARAM)
If $HWND = $FORM1 Then
Local $MINMAXINFO = DllStructCreate("int;int;int;int;int;int;int;int;int;int", $LPARAM)
DllStructSetData($MINMAXINFO, 7, 515)
DllStructSetData($MINMAXINFO, 8, 476)
EndIf
EndFunc
Unzwar Zeile 50, wozu ist die da? Zeile 48 erfüllt doch den gleichen Zweck.