Hosts Datei

  • Ist es eigentlich eine Gute idee die Hosts datei mit

    Code
    FileFlush(@WindowsDir & "System32\drivers\etc\hosts")

    zu leeren?
    wäre für mein Programm DeleteVirus(Beta) nützlich.

    Einmal editiert, zuletzt von TheGamerTGT (15. April 2016 um 22:17)

  • Sollte eigentlich kein Problem darstellen.
    So sieht meine hosts-Datei aus (Win10 Pro x64)

    Ich denke das diese Datei bei einem "normalen" System eh so gut wie leer bleibt. Falls ich falsch liegt, bitte ich um Korrektur :)

    LG

    Philip

  • @grebph nicht ganz, manche viren nutzen die Hosts datei für av seiten fernhalten update server von microsoft und av anbieter ;) ich glaube ich nutze den text da oben für

    Code
    Local $hosts = @WindowsDir & "\System32\drivers\etc\hosts"
    Local $hopen = FileOpen($hosts)
    
    
    FileFlush($hopen)
    FileClose($hopen)

    3 Mal editiert, zuletzt von TheGamerTGT (17. April 2016 um 16:52)

  • @Oscar Besser? Oben edited

    Bin zwar nicht Oscar, aber seine Antwort wäre wohl dieselbe. Nein dein Script ist nachwievor fehlerhaft und unsinnig.

    1. Fileopen() zweimal verwendet
    2. Auch fileclose() kann nur mit einem Datei Handle verwendet werden (Hilfe lesen?)
    3. Du hast den Ratschlag von Oscar nicht befolgt und weißt immernoch nicht was fileflush() eigentlich tut, oder aber du hast es schlichtweg nicht verstanden, dass dir diese Funktion rein garnichts bei deinem Vorhaben hilft

    Ich erklär dir daher nun was fileflush() tut. Wie bei allen Schreibvorgängen speichert Windows die zu schreibenden Daten zunächst im schnellen Arbeitsspeicher in einem Schreibpuffer. Dieser wird nur unter bestimmten Umständen entleert, also auf die langsame Festplatte geschrieben (entweder weil der vorgesehen Schreibpuffer voll ist, eine gewisse Zeit keine neuen Daen hinzugekommen sind oder aber das Dateihandle geschlossen wurde). Will man das Schreiben der Daten nun vorzeitig erzwingen um z.B. Datenverlusten vorzubeugen kann man fileflush() verwenden. Fileflush() löscht also nicht den Dateiinhalt wie du fälschlicherweise hier annimmst.

    Obendrein führt dein fileclose() wie erwähnt ohnehin zu einem fileflush(), was dein obiges Script wie gesagt absolut unsinnig macht.

    EDIT:

    Um zur eigentlichen Aufgabe zurückzukommen... welches Ziel verfolgst du mit dem Script? Jeder halbwegs gescheite Virenscanner überwacht heutzutage Veränderungen der Hosts-Datei und verhindert diese normalerweise sogar. Das könnte im Übrigen auch dazu führen, dass deine Versuche die Hosts-Datei per Script zu verändern scheitern werden. Wie dem auch sei... Änderungen der Hosts-Datei sind wohl das kleinste Übel bei einem Virenbefall. Wenn du ernsthaft glaubt einen eigenen Virenschutz mit Autoit realisieren zu können viel Erfolg damit, aber du wirst damit vermutlich nicht sehr weit kommen.

    3 Mal editiert, zuletzt von misterspeed (16. April 2016 um 22:48)