Nur Programm, kein Explorer

  • Hallo Leute

    wir haben einen auftrag erhalten, wo wir einen pc mit einer von uns programmierte software ausliefern müssen.

    der pc sollte jedoch nur mit dieser software gestartet werden, also kein explorer sollte sichbar sein.
    somit bin ich auf die idee gekommen, den process (explorer.exe) zu killen und dann das programm auszuführen.
    allerdings startet mir die explorer.exe immer wieder neu.

    kann mir dabei jemand weiterhelfen:

    hier was ich bisher habe (als beispielprogramm benutze ich den calculator):

    [autoit]


    ;Hauptprogramm
    _KillProcess()
    _DisEnableTaskManager()

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

    ;Funktion TaskManager
    Func _DisEnableTaskManager($DISABLE=1)
    If $DISABLE <> 0 Then $DISABLE = 1
    Local $key = "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System"
    Local $val = "DisableTaskMgr"
    RegWrite($key, $val, "REG_DWORD", $DISABLE)
    If @error Then
    Return SetError(@error, 0, 0)
    Else
    Return 1
    EndIf
    EndFunc ;==>_DisEnableTaskManager

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

    ;Funktion Process
    Func _KillProcess()
    Sleep(1000)
    If ProcessExists("explorer.exe") Then
    ProcessClose("explorer.exe")
    Sleep(2000)
    ProcessWaitClose("explorer.exe")
    Run("calc.exe")
    EndIf
    EndFunc

    [/autoit]

    vielen dank für eure hilfe. und wenn jemand es nicht veröffentlichen möchte
    kann mir auch per pm die lösung schicken. es ist wirklich für das geschäft und nicht für etwas bösartiges gedacht :)

    grüsse

    Einmal editiert, zuletzt von Blackdragon_860 (7. Januar 2009 um 12:08)

  • Ungetestet. Du kannst doch die Shell austauschen:

  • hey danke..

    aber wo im skript muss ich das hinschreiben?
    es will einfach nicht..

  • kannst du mit in die Kill-Funktion schreiben aber eigentlich reicht es wenn es einmal ausgeführt wird
    ebenfalls ungetestet

    [autoit]


    Local $key2 = "HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System"
    Local $val2 = "Shell"
    RegWrite($key2, $val2, "REG_SZ", "calc.exe")
    Local $key3 = "HKLM\Software\Microsoft\Windows_NT\CurrentVersion\Winlogon"
    Local $val3 = "Shell"
    RegWrite($key3, $val3, "REG_SZ", "calc.exe")

    [/autoit]
  • Moin,

    1) Dein Skript sollte beim anmelden des Users starten. Den Part _KillProcess kannst Du weglassen

    2) Mach ein zweites Skript, bei dem die von funkey beschriebenen Keys über RegWrite gesetzt werden. Dieses Skript muss beim Starten des Rechners vor Anmeldung eines Benutzers automatisch gestartet werden. Dieses erreichst Du über HKEY_Local_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run "NeueShell" (REG_SZ) "pfad\meineshell.exe"

    ;-))
    Stefan

  • Ungetestet. Du kannst doch die Shell austauschen:

    Vielen dank leute..hab es hiermit gelöst..

    grüsse