Hi,
ich bin' nur..., mal wieder !
Habe mal wieder 'nen Knoten im Hirn ! :hammer: :hammer:
Was ist an diesem Code denn nun schon wieder falsch... :hm:
Bis zur zweiten For ... Next Schleife läuft alles gut...
Bei der zweiten For ... Next Schleife kommt zur Zeile 33: $tmp = $arTemp[$i] die Fehlermeldung ==> Array variable has incorrect number of subscripts or subscript dimension range exceeded.:
Spoiler anzeigen
Func Unregister()
#include <File.au3>
#include <String.au3>
#include <Array.au3>
$RegASCI = StringReplace(FileGetShortName($regsource), ".reg", ".old")
RunWait(@ComSpec & " /c type " & FileGetShortName($regsource) & ">" & $RegASCI, @MyDocumentsDir, @SW_HIDE)
FileCopy($RegASCI, $regsource, 1)
FileDelete($RegASCI)
Dim $arFile, $str, $v, $tmp
Dim $pfadRead = FileOpen($regsource, 0)
Dim $arTemp[1]
FileWriteLine($UnRegScript, "; Func Unregister()")
[/autoit] [autoit][/autoit] [autoit]If _FileReadToArray($regsource, $arFile) = 0 Then
MsgBox(0, 'Achtung', "Datei konnte nicht eingelesen werden!")
Exit
EndIf
For $i = 1 To UBound($arFile)-1
$tmp = $arFile[$i]
$vResult = StringRegExp($tmp, "[][]", 1)
If @extended Then
$keyname = StringRegExpReplace($tmp, "[][]", "")
_ArrayAdd($arTemp, $keyname)
EndIf
Next
$arTemp[0] = UBound($arTemp)
For $i = 1 To UBound($arTemp)-1
$tmp = $arTemp[$i]
$tmp1 = $tmp & "\"
$Pos = _ArraySearch($arTemp, $tmp1, 0, 0, 0, True)
Select
Case $Pos = -1
FileWriteLine($UnRegScript, 'RegDelete("' & $tmp & '")')
Case Else
If $tmp1 = "\" Then ExitLoop
$v = _ArrayDelete($arTemp, $Pos)
$i = $i - 1
EndSelect
Next
FileWriteLine($UnRegScript, "; EndFunc")
FileClose($pfadRead)
FileDelete(@TempDir & "\Temp.txt")
EndFunc ;==>Unregister
Gruß