Hi @ all
Mal wieder eine kleine Spielerei meinerseits
Mit diesem Tool könnt ihr Autostarteinträge löschen.
Weitere Funktionen folgen vll. bald
Version : 1.0
Spoiler anzeigen
#RequireAdmin
#include <Array.au3>
#include <File.au3>
#include <GUIListView.au3>
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <ListViewConstants.au3>
#include <WindowsConstants.au3>
$AutoStartDir = @StartupDir
$AutoRegDir1 = "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run"
$AutoRegDir2 = "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
Dim $AutoStartFiles
_FileListToArray ($AutoStartDir)
Dim $AutoStartFiles2 = _RegReadToArray ($AutoRegDir1)
Dim $AutoStartFiles3 = _RegReadToArray ($AutoRegDir2)
$Form1 = GUICreate("AutoDetector", 608, 424, 192, 114)
$Button1 = GUICtrlCreateButton("Eintrag löschen", 8, 400, 201, 17, $WS_GROUP)
$Button3 = GUICtrlCreateButton("Beenden", 424, 400, 169, 17, $WS_GROUP)
$ListView1 = GUICtrlCreateListView("Name|Datei|Ort", 8, 8, 585, 385)
_GUICtrlListView_SetColumnWidth ($ListView1,0,Int(585/3)-2)
_GUICtrlListView_SetColumnWidth ($ListView1,1,Int(585/3)-2)
_GUICtrlListView_SetColumnWidth ($ListView1,2,Int(585/3)-2)
For $i = 1 To UBound ($AutoStartFiles,1)-1
GUICtrlCreateListViewItem ($AutoStartFiles [$i]&"|"&$AutoStartFiles [$i]&"|"&@StartupDir,$ListView1)
Next
For $i = 1 To UBound ($AutoStartFiles2,1)-1
GUICtrlCreateListViewItem ($AutoStartFiles2 [$i]&"|"&RegRead ($AutoRegDir1,$AutoStartFiles2 [$i])&"|"&"Registry (HKCU:Run)",$ListView1)
Next
For $i = 1 To UBound ($AutoStartFiles3,1)-1
GUICtrlCreateListViewItem ($AutoStartFiles3 [$i]&"|"&RegRead ($AutoRegDir2,$AutoStartFiles3 [$i])&"|"&"Registry (HKLM:Run)",$ListView1)
Next
GUISetState(@SW_SHOW)
[/autoit] [autoit][/autoit] [autoit]While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
$ListView_Data = StringSplit (GUICtrlRead(GUICtrlRead($ListView1),2),"|")
If $ListView_Data [3] = @StartupDir Then
FileDelete (@StartupDir&"\"&$ListView_Data [1])
_GUICtrlListView_DeleteItem ($ListView1,GUICtrlRead($ListView1)-$ListView1-1)
EndIf
If $ListView_Data [3] = "Registry (HKCU:Run)" Then
RegDelete ($AutoRegDir1,$ListView_Data [1])
_GUICtrlListView_DeleteItem ($ListView1,GUICtrlRead($ListView1)-$ListView1-1)
EndIf
If $ListView_Data [3] = "Registry (HKLM:Run)" Then
RegDelete ($AutoRegDir2,$ListView_Data [1])
_GUICtrlListView_DeleteItem ($ListView1,GUICtrlRead($ListView1)-$ListView1-1)
EndIf
Case $Button3
Exit
EndSwitch
WEnd
Func _RegReadToArray ($Reg_Path)
Dim $Return [1] = [""]
For $value = 1 To 100
$read_value = RegEnumVal ($Reg_Path,$value)
If @error Then ExitLoop
_ArrayAdd ($Return,$read_value)
Next
Return $Return
EndFunc