.exe ausführen verhindern

  • Hallo zusammen, ist es möglich einen Programmstart also eine .exe zu verhindern?

    Ich will ein Programm schreiben, dass ich in den Systemstart lege, und verhindert das ein bestimmtes Programm (bevor ich jetzt auf die Foren-Regeln hingewiesen werden...das Programm ist Word of Warcraft *g*) starten kann?

  • ich will ja nur die Auführung verhindern....

    so etwa

    [autoit]


    If run("D:Games\WoW\wow.exe") Then
    Exit

    [/autoit]

    geht natürlich nicht... aber sowas in der Art....

    ich will kein Trojaner schreiben.... beweisen kann ich euch das leider nicht :(

  • Du kannst höchtens sowas in der Richtung machen:

    Spoiler anzeigen
    [autoit]

    while 1
    if WinExists('World of Warcraft', '') then winclose('World of Warcraft')
    WEnd

    [/autoit]


    \Edit: Oder noch besser das hier:

    Spoiler anzeigen
    [autoit]

    while 1
    if ProcessExists('World of Warcraft') then ProcessClose('World of Warcraft')
    wend

    [/autoit]
  • If ProcessExists("") Then ProcessClose("")
    siehe Hilfe... 8)

    MfG Schnuffel

    "Sarkasmus ist die niedrigste Form des Witzes, aber die höchste Form der Intelligenz."
    Val McDermid

    ein paar Infos ...

    Wer mehr als "nur" Hilfe benötigt, kann sich gern im Forum "Programmieranfragen" an uns wenden. Wir helfen in allen Fällen, die die Forenregeln zulassen.

    Für schnelle Hilfe benötigen wir ein ! lauffähiges ! Script, dass wir als Demonstration des Problems testen können. Wer von uns erwartet ein Teilscript erstmal lauffähig zu bekommen, der hat
    1. keine wirkliche Not
    2. keinen Respekt vor Menschen die ihm in ihrer Freizeit Ihre Hilfe anbieten
    3. oder ist einfach nur faul und meint wir coden das für ihn

    In solchen Fällen erlaube ich mir, die Anfrage einfach zu ignorieren. ;)

  • Du hast 2 Möglichkeiten, einen Prozess zu verbieten:
    1) processExists -> ProcessClose
    2) über Registry (Beispiel mit notepad)

    Code
    Windows Registry Editor Version 5.00
    
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\notepad.exe]
    @=".exe Datei notepad.exe verboten (Der Debugger existiert nicht)"
    "Debugger"="Falscher_Pfad.kein_Debugger"
  • Welchen Zweck soll denn das haben? Lösch doch einfach das Spiel oder
    willst du Freunde von dir nerven?

    Ansonsten waren meine Vorredner schneller :/

    "Never touch a running System!"

  • das ist für ein Freund.... der zu seinem Glück gezwungen werden WILL (er will es tatsächlich....anders kann er wohl nicht aufhören) Das mit der Registry ist auch intressant

    Danke

  • Dann änder das PW von seinem Account und kündige diesen, aber ändere vorher die Emailadresse im Acc ab. und er soll sich an
    nen Psychologen wenden.

    Bedenke, er könnte ja Windows neu installieren...

    "Never touch a running System!"

  • In der Registry kannst du auch einen Pfad zu ner anderen Exe eingeben. Kannst ja mit AutoIt ne GUI machen, auf der du deinem Freund nen Hinweis hinterlassen kannst : "Geh zum Psychologen" :P

  • nein der kann windows nicht neu installieren (wenn ich es nicht für ihn mache)

    mit notepad klappt das ganz gut...leider klappt es mit Warcraft nicht

    vll find ich noch ein Weg ... und wenn nicht schick ich ihn halt doch zum Onkel Doc :thumbup:

  • Schon dran gedacht, dass es den Launcher und das Spiel gibt? -> 2 .Dateien.
    wow.exe und die Exe vom Launcher.

  • Als Info:

    WoW ist von der Registry unabhängig, kannst drin löschen was du willst ;)

    (und ich weiß das, bin selbst WoW-Spieler und Fachinformatiker :/)

    "Never touch a running System!"

  • Bei einem Onlinespiel / Programm kannst Du das auch über das Netzwerksetup erreichen, dass das Spiel nicht mehr geht.
    Unter C:\Windows\System32\Drivers\etc findest Du eine Datei hosts (ohne Endung!)

    Die einfach in Notepad öffnen und so in etwas folgende Zeile einfügen:
    127.0.0.1 https://autoit.de/www.wow.com

    Was dann passiert, ist das Windows alle Anfragen an https://autoit.de/www.wow.com an den lokalen Rechner umleitet, weshalb die Kommunikation dann scheitert.
    Den Servernamen, denn Du da eintragen musst, weiß ich nicht, da ich kein WOW spiele, wahrscheinlich musst Du sogar mehr als einen Namen angeben, aber dann klappt es auch.

    Wenn der Gameclient allerdings direkte IP Verbindungen aufbaut, funktioniert das so nicht.

  • würde es nicht auch gehn einfach eine passwortafgrage dazwischenzuschieben?

    also wenn gestartet wird....dann msgBox mit pw... und dann gehts los?

  • Nochmal ne Anmerkung:

    nein der kann windows nicht neu installieren (wenn ich es nicht für ihn mache)

    Das liest sich so, als wärst Du sein Systemadministrator, deshalb die Frage, kannst Du in seinem Router nicht einfach die Ports blocken? Das ist m.E. die effektivste Methode. Benutze ich auch immer zu Hause, wenn mein Sohn mal wieder mehr an zocken als an Abi denkt.

    Edit:
    Bei manchen Virenscannern kann man ein Liste "unerwünschter" Programme bearbeiten. Wenn Du in die Liste WOW aufnimmst, sollte der Virenscanner es selbsttätig abschiessen.

  • Zitat

    würde es nicht auch gehn einfach eine passwortafgrage dazwischenzuschieben?


    Dann brauchst du ein Überwachungsprogramm:

    [autoit]

    While 1
    If ProcessExists("wow.exe") Then
    While ProcessClose("wow.exe")
    WEnd
    $PW = InputBox("pw"
    If $PW = OK Then
    RunWait("wow.exe")
    EndIf
    EndIf
    Wend

    [/autoit]


    Und zum Thema Ports blocken: die musst du erst finden und dann muss es der Router unterstützen.

  • neeee bin nur sein Freund und hab sein Rechner eingerichtet :P

    und er hat grad schwierigkeiten sich auf sein Studium zu konzentrieren

    dieses Überwachungsprogramm sieht nett aus.... schauen wir mal ob ProcessExists funktioniert

    ich zogg auch kein wow ... habs mal am alten Warcraft 3 getestet...und da klappt es leider nicht

    /EDIT1 : mit den Ports gehts nicht weil er ja über das Studentenwohnheim Netzwerk online geht
    /EDIT2 : @ progandy das Skript funktioniert nicht... wozu ist die zweie while schleife?

    Einmal editiert, zuletzt von MichaelKl (24. Februar 2009 um 11:09)