mein 1. fertiges Script

  • So mein 1. Script angefertigt durch zahlreiche Hilfe von Usern hier und natürlich mich :)
    Danke Danke
    schwierig für euch es ist sehr an meine Bedürfnisse angepasst, also ausprobieren wird schwer.
    Vlt können sich ja einige neue User einige Anregungen holen. Auf jedenfall bin ich jetzt ein wenig vertraut damit und werde AutoIt weiterhin nutzen, weil es einfach fetzt :)

    Zum Script:
    1. vlt fallen euch ja einige verbesserungsvorschläge ein
    2. die automatische ummeldung von lokal auf die domaine funktioniert nicht :(
    3. self delete funktioniert noch nicht

    hier das Script :)

    Spoiler anzeigen
    [autoit]

    #cs ----------------------------------------------------------------------------

    [/autoit] [autoit][/autoit] [autoit]

    AutoIt Version: 3.3.6.1
    Author: Tobias Plewka

    [/autoit] [autoit][/autoit] [autoit]

    Script Function:
    Startscript nach einem neuen Image und einem neu angelegtem Benutzer

    [/autoit] [autoit][/autoit] [autoit]

    #ce ----------------------------------------------------------------------------

    [/autoit] [autoit][/autoit] [autoit]

    ;#RequireAdmin
    #include <Process.au3>
    #include <AD.au3>
    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #Include <GuiButton.au3>

    [/autoit] [autoit][/autoit] [autoit]

    If FileExists(@ScriptDir & "\status.ini") Then
    $wert = IniRead(@ScriptDir & "\status.ini", "aktion", "key", "")
    Else
    IniWrite(@ScriptDir & "\status.ini", "aktion", "key", "2")
    $wert = 1
    EndIf
    Switch $wert
    Case 1
    sleep(1000)
    WinSetState("status.ini","",@SW_HIDE)
    sleep(1000)
    RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon", "DefaultUserName", "REG_SZ", "xxx")
    RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon", "DefaultPassword", "REG_SZ", "xxx")
    RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon", "AutoAdminLogon", "REG_SZ", "1")
    ;Computernamen ändern
    SplashTextOn("Fortschritt","Installationsschritt 1/5" & @CRLF & @CRLF &"Computername wird geändert...","500","400", @DesktopWidth -500,@DesktopHeight -400,35,"",16)
    #Region ### START Koda GUI section ### Form=D:\Scripte\Startscript\PCNamenchange.kxf
    $Form1 = GUICreate("Namen ändern...", 243, 88, 342, 248)
    $Label1 = GUICtrlCreateLabel("Computernamen eingeben:", 8, 8, 197, 24)
    GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif")
    $edPcname2 = GUICtrlCreateInput("", 8, 32, 225, 21)
    GUICtrlSetLimit(-1, 15)
    $Button1 = GUICtrlCreateButton("Computernamen ändern!", 8, 56, 227, 25)
    GUISetState(@SW_SHOW)
    $hMenu = DllCall("user32.dll", "hwnd", "GetSystemMenu", "hwnd", $Form1, "int", 0) ;Deaktiviert das schließen des Fensters
    DllCall("user32.dll", "hwnd", "EnableMenuItem", "hwnd", $hMenu[0], "int", 0xF060, "int", 0x1);Deaktiviert das schließen des Fensters
    #EndRegion ### END Koda GUI section ###

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

    [/autoit] [autoit][/autoit] [autoit]

    Case $Button1
    $pcname2 = GuiCtrlRead($edPcname2)
    GuiSetState(@SW_Hide)
    ExitLoop
    EndSwitch
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    ShellExecute("C:\Windows\System32\sysdm.cpl")
    WinWait("Systemeigenschaften")
    ControlClick("Systemeigenschaften", "", "Button2")
    Send("!n")
    ControlSend("Ändern des Computernamens bzw. der Domäne","",1002,$pcname2)
    Send("{ENTER}")
    Sleep(10000)
    IniWrite(@ScriptDir & "\status.ini", "aktion", "key", "2")
    MsgBox(48,"Neustart","Der Computer wird in 5sek neugestartet",5)
    SplashOff()
    _RunDOS("shutdown -r")
    Case 2
    sleep(1000)
    WinSetState("status.ini","",@SW_HIDE)
    sleep(1000)
    SplashTextOn("Fortschritt","Installationsschritt 2/5" & @CRLF & @CRLF &"Computername wird zur Domäne hinzugefügt...","500","400", @DesktopWidth -500,@DesktopHeight -400,35,"",16)
    #Region ### START Koda GUI section ### Form=form1.kxf
    $Form1_1 = GUICreate("Anmeldung", 263, 129, 214, 180, BitOR($GUI_SS_DEFAULT_GUI,$WS_MAXIMIZEBOX,$WS_SIZEBOX,$WS_THICKFRAME,$WS_TABSTOP))
    $txtPCName = GUICtrlCreateLabel("Domain Authentifizierung:", 5, 6, 187, 24)
    GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif")
    $edADMUser = GUICtrlCreateInput("", 72, 36, 185, 21)
    $btnSend = GUICtrlCreateButton("Login!", 8, 96, 251, 25)
    $edADMPw = GUICtrlCreateInput("", 72, 68, 185, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_PASSWORD))
    $Label1 = GUICtrlCreateLabel("Username:", 4, 36, 70, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $Label2 = GUICtrlCreateLabel("Passwort:", 4, 68, 62, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    GUISetState(@SW_SHOW)
    $hMenu = DllCall("user32.dll", "hwnd", "GetSystemMenu", "hwnd", $Form1_1, "int", 0) ;Deaktiviert das schließen des Fensters
    DllCall("user32.dll", "hwnd", "EnableMenuItem", "hwnd", $hMenu[0], "int", 0xF060, "int", 0x1);Deaktiviert das schließen des Fensters
    #EndRegion ### END Koda GUI section ###

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

    [/autoit] [autoit][/autoit] [autoit]

    Case $edADMUser
    Case $edADMPw
    Case $btnSend
    $ADMUser = GuiCtrlRead($edADMUser)
    $ADMPw = GuiCtrlRead($edADMPw)
    GuiSetState(@SW_Hide)
    ExitLoop
    EndSwitch
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    ShellExecute("C:\Windows\System32\sysdm.cpl")
    WinWait("Systemeigenschaften")
    ControlClick("Systemeigenschaften", "", "Button2")
    Send("!n")
    ControlClick("Ändern des Computernamens bzw. der Domäne", "",1008)
    ControlSend("Ändern des Computernamens bzw. der Domäne","",116,"siv")
    ControlClick("Ändern des Computernamens bzw. der Domäne", "",1)
    WinWaitActive("Windows-Sicherheit")
    ControlSend("Windows-Sicherheit","",116,"siv")
    ControlSend("Windows-Sicherheit","","[CLASSNN:Edit1; INSTANCE:1]",$ADMUser)
    Sleep(1000)
    Send("{TAB}")
    Sleep(1000)
    ControlSend("Windows-Sicherheit","","[CLASSNN:Edit2; INSTANCE:2]",$ADMPw)
    Sleep(1000)
    Send("{ENTER}")

    [/autoit] [autoit][/autoit] [autoit]

    #cs
    $iAD_Debug = 2
    _AD_Open("","","DC=siv,DC=de","ads01.siv.de","CN=Configuration,DC=siv,DC=de")
    _AD_CreateComputer(
    _AD_JoinDomain($pcname)
    MsgBox(0,"Fehlermeldung:","Error Code: "& @error)
    _AD_Close()
    #ce

    [/autoit] [autoit][/autoit] [autoit]

    Sleep(5000)
    ControlSetText("Fortschritt","","[CLASS:Static; INSTANCE:1]","Installationsschritt 2/5" & @CRLF & @CRLF & "Adminrechte werden vergeben")
    $name = @ComputerName
    $nameneu = StringTrimRight($name, 5)
    $sCmdGroups = ("net localgroup Administratoren " & $nameneu & " /add")
    _RunDOS($sCmdGroups)
    Sleep(5000)

    [/autoit] [autoit][/autoit] [autoit]

    RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon", "DefaultUserName", "REG_SZ", $nameneu)
    RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon", "DefaultPassword", "REG_SZ", "xxx")
    RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon", "DefaultDomainName", "REG_SZ", "siv")
    RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon", "AutoAdminLogon", "REG_SZ", "1")

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite(@ScriptDir & "\status.ini", "aktion", "key", "3")
    MsgBox(48,"Neustart","Der Computer wird in 5 Sekunden neugestartet",5)
    SplashOff()
    _RunDOS("shutdown -r")

    [/autoit] [autoit][/autoit] [autoit]

    Case 3
    sleep(1000)
    WinSetState("status.ini","",@SW_HIDE)
    sleep(1000)
    ;zu lokalen Gruppen hinzufügen(Adminrechte)
    if @UserName = "superich" Then
    #Region ### START Koda GUI section ### Form=C:\Users\superich\Desktop\FehlerSuperIch.kxf
    $Form1 = GUICreate("Fehlermeldung", 491, 186, 192, 124)
    GUISetBkColor(0xFF0000)
    $Label1 = GUICtrlCreateLabel("!!!Sie sind im Moment als Superich angemeldet!!!", 16, 8, 462, 28)
    GUICtrlSetFont(-1, 15, 800, 0, "MS Sans Serif")
    $Label2 = GUICtrlCreateLabel("Bitte abmelden und als neu registrierter User anmelden", 21, 59, 447, 24)
    GUICtrlSetFont(-1, 12, 800, 0, "MS Sans Serif")
    $Button1 = GUICtrlCreateButton("Abmelden", 40, 104, 395, 57)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    _RunDos("shutdown /l")
    EndSwitch
    WEnd
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    SplashTextOn("Fortschritt","Installationsschritt 3/5" & @CRLF & @CRLF &"Benutzerrechte werden angepasst...","500","400", @DesktopWidth -500,@DesktopHeight -400,35,"",16)
    ControlSetText("Fortschritt","","[CLASS:Static; INSTANCE:1]","Installationsschritt 3/5" & @CRLF & @CRLF & "Hauptbenutzerrechte werden vergeben")
    $sCmdGroups = ("net localgroup Hauptbenutzer " & @Username & " /add")
    _RunDOS($sCmdGroups)
    Sleep(5000)
    ControlSetText("Fortschritt","","[CLASS:Static; INSTANCE:1]","Installationsschritt 3/5" & @CRLF & @CRLF & "Netzwerkkonfigurationsrechte werden vergeben")
    $sCmdGroups = ("net localgroup Netzwerkkonfigurations-Operatoren " & @Username & " /add")
    _RunDOS($sCmdGroups)
    Sleep(5000)
    ControlSetText("Fortschritt","","[CLASS:Static; INSTANCE:1]","Installationsschritt 3/5" & @CRLF & @CRLF & "Remotedesktoprechte werden vergeben")
    $sCmdGroups = ("net localgroup Remotedesktopbenutzer " & @Username & " /add")
    _RunDOS($sCmdGroups)
    Sleep(5000)
    IniWrite(@ScriptDir & "\status.ini", "aktion", "key", "4")
    MsgBox(48,"Abmelden","Sie werden in 5 Sekunden vom Computer abgemeldet!",5)
    SplashOff()
    _RunDOS("shutdown /l")

    [/autoit] [autoit][/autoit] [autoit]

    Case 4
    sleep(1000)
    WinSetState("status.ini","",@SW_HIDE)
    sleep(1000)
    if @UserName = "superich" Then
    #Region ### START Koda GUI section ### Form=C:\Users\superich\Desktop\FehlerSuperIch.kxf
    $Form1 = GUICreate("Fehlermeldung", 491, 186, 192, 124)
    GUISetBkColor(0xFF0000)
    $Label1 = GUICtrlCreateLabel("!!!Sie sind im Moment als Superich angemeldet!!!", 16, 8, 462, 28)
    GUICtrlSetFont(-1, 15, 800, 0, "MS Sans Serif")
    $Label2 = GUICtrlCreateLabel("Bitte abmelden und als neu registrierter User anmelden", 21, 59, 447, 24)
    GUICtrlSetFont(-1, 12, 800, 0, "MS Sans Serif")
    $Button1 = GUICtrlCreateButton("Abmelden", 40, 104, 395, 57)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    _RunDos("shutdown /l")
    EndSwitch
    WEnd
    EndIf
    SplashTextOn("Fortschritt","Installationsschritt 4/5" & @CRLF & @CRLF & "Netzlaufwerke werden verbunden...","500","400", @DesktopWidth -500,@DesktopHeight -400,35,"",16)
    ;###################sämtliche Benutzereinstellungen###################
    ;Netzlaufwerke verbinden
    Dim $nwdrive [14][2]
    $nwdrive [0][0] = "G:"
    $nwdrive [0][1] = "\\filer\gf"

    [/autoit] [autoit][/autoit] [autoit]

    $nwdrive [1][0] = "I:"
    $nwdrive [1][1] = "\\filer\CCT"

    [/autoit] [autoit][/autoit] [autoit]

    $nwdrive [2][0] = "K:"
    $nwdrive [2][1] = "\\filer\kunden.abi"

    [/autoit] [autoit][/autoit] [autoit]

    $nwdrive [3][0] = "L:"
    $nwdrive [3][1] = "\\filer\appl"

    [/autoit] [autoit][/autoit] [autoit]

    $nwdrive [4][0] = "M:"
    $nwdrive [4][1] = "\\filer\appl"

    [/autoit] [autoit][/autoit] [autoit]

    $nwdrive [5][0] = "Q:"
    $nwdrive [5][1] = "\\filer\appl"

    [/autoit] [autoit][/autoit] [autoit]

    $nwdrive [6][0] = "R:"
    $nwdrive [6][1] = "\\filer\appl"

    [/autoit] [autoit][/autoit] [autoit]

    $nwdrive [7][0] = "S:"
    $nwdrive [7][1] = "\\filer\appl"

    [/autoit] [autoit][/autoit] [autoit]

    $nwdrive [8][0] = "T:"
    $nwdrive [8][1] = "\\filer\appl"

    [/autoit] [autoit][/autoit] [autoit]

    $nwdrive [9][0] = "V:"
    $nwdrive [9][1] = "\\filer\appl"

    [/autoit] [autoit][/autoit] [autoit]

    $nwdrive [10][0] = "W:"
    $nwdrive [10][1] = "\\filer\appl"

    [/autoit] [autoit][/autoit] [autoit]

    $nwdrive [11][0] = "X:"
    $nwdrive [11][1] = "\\filer\appl"

    [/autoit] [autoit][/autoit] [autoit]

    $nwdrive [12][0] = "Y:"
    $nwdrive [12][1] = "\\filer\appl"

    [/autoit] [autoit][/autoit] [autoit]

    $nwdrive [13][0] = "Z:"
    $nwdrive [13][1] = "\\filer\users\" & @UserName

    [/autoit] [autoit][/autoit] [autoit]

    For $i = 0 To (Ubound($nwdrive) - 1) Step +1 ;durchlaufe das Array von 0 bis max. Anzahl von Arrayinhalten(Programme)
    if DriveMapGet($nwdrive[$i][0]) <> (@error = 1) Then
    DriveMapAdd($nwdrive[$i][0], $nwdrive[$i][1])
    EndIf
    Next

    [/autoit] [autoit][/autoit] [autoit]

    FileCopy("C:\Benutzer_Sachen\ocspaket7\ocs-service-update", "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup\",1)

    [/autoit] [autoit][/autoit] [autoit]

    ;Drucker einrichten

    [/autoit] [autoit][/autoit] [autoit]

    ;Programme mit Adminrechten ausführen
    Dim $programs[14][3]
    $programs[0][0] = "C:\Program Files (x86)\Mozilla Firefox\firefox.exe" ;Pfad zum Programm
    $programs[0][1] = "" ;Parameter zum ausführen "" = standard
    $programs[0][2] = "firefox.exe" ;Prozessname zum schließen

    [/autoit] [autoit][/autoit] [autoit]

    $programs[1][0] = "C:\Program Files (x86)\FreeCommander\FreeCommander.exe"
    $programs[1][1] = ""
    $programs[1][2] = "FreeCommander.exe"

    [/autoit] [autoit][/autoit] [autoit]

    $programs[2][0] = "C:\Program Files (x86)\Adobe\Reader 10.0\Reader\AcroRd32.exe"
    $programs[2][1] = ""
    $programs[2][2] = "AcroRd32.exe"

    [/autoit] [autoit][/autoit] [autoit]

    $programs[3][0] = "C:\Program Files (x86)\HC_Software\infoBoard_Client\infoBoard.exe"
    $programs[3][1] = ""
    $programs[3][2] = "infoBoard.exe"

    [/autoit] [autoit][/autoit] [autoit]

    $programs[4][0] = "C:\Program Files (x86)\Citrix\ICA Client\pn.exe"
    $programs[4][1] = ""
    $programs[4][2] = "pn.exe"

    [/autoit] [autoit][/autoit] [autoit]

    $programs[5][0] = "C:\Program Files (x86)\Internet Explorer\iexplore.exe"
    $programs[5][1] = ""
    $programs[5][2] = "iexplorer.exe"

    [/autoit] [autoit][/autoit] [autoit]

    $programs[6][0] = "C:\Program Files (x86)\Microsoft Office\Office12\EXCEL.EXE"
    $programs[6][1] = ""
    $programs[6][2] = "EXCEL.EXE"

    [/autoit] [autoit][/autoit] [autoit]

    $programs[7][0] = "C:\Program Files (x86)\Microsoft Office\Office12\WINWORD.EXE"
    $programs[7][1] = ""
    $programs[7][2] = "WINWORD.EXE"

    [/autoit] [autoit][/autoit] [autoit]

    $programs[8][0] = "C:\Program Files (x86)\Microsoft Office\Office12\POWERPNT.EXE"
    $programs[8][1] = ""
    $programs[8][2] = "POWERPNT.EXE"

    [/autoit] [autoit][/autoit] [autoit]

    $programs[9][0] = "C:\Program Files (x86)\Microsoft Office\Office12\OUTLOOK.EXE"
    $programs[9][1] = ""
    $programs[9][2] = "OUTLOOK.EXE"

    [/autoit] [autoit][/autoit] [autoit]

    $programs[10][0] = "C:\Program Files (x86)\Notepad++\notepad++.exe"
    $programs[10][1] = ""
    $programs[10][2] = "notepad++.exe"

    [/autoit] [autoit][/autoit] [autoit]

    $programs[11][0] = "C:\Program Files\PSQL\plsqldev.exe"
    $programs[11][1] = ""
    $programs[11][2] = "plsqldev.exe"

    [/autoit] [autoit][/autoit] [autoit]

    $programs[12][0] = "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\SIV.Applikationen\TeamViewerQS.exe"
    $programs[12][1] = ""
    $programs[12][2] = "TeamViewer.exe"

    [/autoit] [autoit][/autoit] [autoit]

    $programs[13][0] = "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\SIV.Applikationen\OCS-Paket-Update.exe"
    $programs[13][1] = ""
    $programs[13][2] = "OCS-Paket-Update.exe"

    [/autoit] [autoit][/autoit] [autoit]

    $ausgabe =""
    For $i = 0 To (UBound($programs) - 1) Step +1 ;durchlaufe das Array von 0 bis max. Anzahl von Arrayinhalten(Programme)
    ControlSetText("Fortschritt","","[CLASS:Static; INSTANCE:1]","Installationsschritt 4/5" & @CRLF & @CRLF & $programs[$i][2])
    ShellExecute($programs[$i][0], $programs[$i][1]) ;ausführen des Programs
    If ProcessExists($programs[$i][2]) Then
    Sleep(10000)
    ProcessClose($programs[$i][2]) ;schließe das Programm
    EndIf
    ProcessWaitClose($programs[$i][2])
    Next

    [/autoit] [autoit][/autoit] [autoit]

    ;Systemsteuerung -> Java -> temp. Internetdateien -> Speicher auf 50 MB setzen

    [/autoit] [autoit][/autoit] [autoit]

    ;Outlook einrichten

    [/autoit] [autoit][/autoit] [autoit]

    ;FileCopy("C:\Users\superich\Virtual Machines\Windows XP Mode.vmcx","@UserProfileDir\Virtual Machines\Windows XP Mode.vmcx",1) ;kopiert die VM

    [/autoit] [autoit][/autoit] [autoit]

    ;automatische Installation von FirePassF5
    ControlSetText("Fortschritt","","[CLASS:Static; INSTANCE:1]","Installationsschritt 4/5" & @CRLF & @CRLF & "Firepass wird installiert")
    Run(@COMSPEC & " /c " & "msiexec /i C:\Benutzer_Sachen\GatewayF5\FirePassComponentInstaller.msi" )
    WinWaitActive("[CLASS:#32770]","")
    WinActivate("[TITLE:Datei öffnen - Sicherheitswarnung]")
    Send ("!u")
    WinWaitActive("[CLASS:MsiDialogCloseClass]","","")
    Send ("!i")
    WinWaitActive("[CLASS:MsiDialogCloseClass]","&Finish","")
    Send("!f")

    [/autoit] [autoit][/autoit] [autoit]

    ControlSetText("Fortschritt","","[CLASS:Static; INSTANCE:1]","Installationsschritt 4/5" & @CRLF & @CRLF & "Zertifikate werden hinzugefügt")
    $sCommand = ('certutil -addstore root "C:\Benutzer_Sachen\Zertifikate\cert_ca.crt"')
    _RunDOS($sCommand)
    $sCommand = ('certutil -addstore root "C:\Benutzer_Sachen\Zertifikate\cert_ca_gateway.crt"')
    _RunDOS($sCommand)
    $sCommand = ('certutil -addstore root "C:\Benutzer_Sachen\Zertifikate\rootsiv.cer"')
    _RunDOS($sCommand)

    [/autoit] [autoit][/autoit] [autoit]

    ;WLAN Passwort setzen

    [/autoit] [autoit][/autoit] [autoit]

    ControlSetText("Fortschritt","","[CLASS:Static; INSTANCE:1]","Installationsschritt 4/5" & @CRLF & @CRLF & "Adminrechte werden entzogen")
    $sCmdGroups = ("net localgroup Administratoren " & @Username & " /delete")
    _RunDOS($sCmdGroups)

    [/autoit] [autoit][/autoit] [autoit]

    IniWrite(@ScriptDir & "\status.ini", "aktion", "key", "5")
    MsgBox(48,"Neustart","Der Computer wird in 5 Sekunden neugestartet",5)
    SplashOff()
    _RunDOS("shutdown -r")

    [/autoit] [autoit][/autoit] [autoit]

    Case 5
    sleep(1000)
    WinSetState("status.ini","",@SW_HIDE)
    sleep(1000)
    SplashTextOn("Fortschritt","Installationsschritt 5/5" & @CRLF & @CRLF & "Startscript beendet!","500","400", @DesktopWidth -500,@DesktopHeight -400,35,"",16)
    ;auflisten von aufgetretenden Fehlern
    IniWrite(@ScriptDir & "\status.ini", "aktion", "key", "6")
    SplashOff()

    [/autoit] [autoit][/autoit] [autoit]

    Case 6
    sleep(1000)
    WinSetState("status.ini","",@SW_HIDE)
    sleep(1000)
    FileDelete(@ScriptDir & "\status.ini")
    RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon", "DefaultUserName", "REG_SZ", "")
    RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon", "DefaultPassword", "REG_SZ", "")
    RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon", "AutoAdminLogon", "REG_SZ", "0")
    _SelfDelete()
    EndSwitch

    [/autoit] [autoit][/autoit] [autoit]

    Func _SelfDelete($iDelay = 0)
    Local $sCmdFile
    FileDelete(@TempDir & "\scratch.bat")
    $sCmdFile = 'ping -n ' & $iDelay & '127.0.0.1 > nul' & @CRLF _
    & ':loop' & @CRLF _
    & 'del "' & @ScriptFullPath & '" > nul' & @CRLF _
    & 'if exist "' & @ScriptFullPath & '" goto loop' & @CRLF _
    & 'del ' & @TempDir & '\scratch.bat'
    FileWrite(@TempDir & "\scratch.bat", $sCmdFile)
    Run(@TempDir & "\scratch.bat", @TempDir, @SW_HIDE)
    EndFunc ;==>_SelfDelete

    [/autoit]
  • Zeile 410

    [autoit]

    & 'del "' & @ScriptFullPath & '" > nul' & @CRLF _

    [/autoit]


    falsch.....
    muss heisen

    [autoit]

    & 'del "' & @ScriptFullPath & '">NUL' & @CRLF _

    [/autoit]

    -

  • Folgende Gründe warum Ich den Spoiler niemals öffnen werde:

    - Kein Titel
    - Keine Beschreibung
    - ...

    Edit: Dass soll heißen: Was macht das Ding? Wie heißt es? Brauchst du noch irgendwobei Hilfe? usw...

    MfG

    Einmal editiert, zuletzt von campweb (30. September 2011 um 13:58)

  • lass ihn tobi, er will nur pöbeln.

    Respekt, langer code, arbeit mit Arrays ... - Mein erstes script war nicht so lang & umfangreich - Colles Tool, ne beschreibung wär aber ganz cool

    Es gibt sehr viele Leute, die glauben. Aber aus Aberglauben.
    - Blaise Pascal

  • okay die mache ich fertig, da ich gleich feierabend habe werde ich das am Dienstag machen dann nehm ich mir da ein wenig mehr Zeit für :)

  • Nicht schlecht!!! Ich kann mich nicht wirklich an mein erstes Script erinnern, war glaub ich ein 2D Game mit einem Strichmenchen was einfach nur die Position bewegt :D Wie schon vorher gesagt wurde, sehr gutes 1. Programm.