relativ bekannte Dateinamen angeben möglich?

  • Hallo,

    irgendwie stehe ich gerade etwas auf dem Schlauch. In meinem Temp-Verzeichnis erscheint während der Installation eine log-Datei. Diese Logdatei fängt mit "SetupExe(" an und danach folgen (ohne irgendwelche Leerzeichen) irgendwelche Hexadezimal-Zeichen.

    Es soll geprüft werden, ob diese Datei mit dem Variablen ende irgendwann erscheint. Das ganze habe ich mit dem hier probiert(im Original noch mit einer Schleife umbaut, die alle paar Sekunden solange prüft, bis es die Datei gibt):

    Zitat

    If FileExists("C:\Users\@UserName\AppData\Local\Temp\SetupExe(*.txt") Then ...

    Das hat aber nicht funktioniert.

    Was mache ich falsch?
    Ist das so überhaupt möglich?

    MfG

    tiga05

  • Du brauchst nicht alle Dateien einzulesen.
    Mit FileFindFirstFile kannst du auch Wildcards verwenden:

    Spoiler anzeigen
    [autoit]

    Global Const $s_Path = @TempDir
    Global Const $s_Pattern = "SetupExe(*.txt"

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

    Global $h_S = FileFindFirstFile($s_Path & "\" & $s_Pattern)
    If $h_S = -1 Then
    MsgBox(0, "", "Datei nicht vorhanden")
    Else
    MsgBox(0, "", "Datei vorhanden" & @CRLF & "Dateiname: " & FileFindNextFile($h_S))
    FileClose($h_S)
    EndIf

    [/autoit]
  • Wenn es ein MSI Setup ist kannst du den Logpfad ja beim Aufruf mitgeben. msiexec /help

    Windows ® Installer. V 5.0.7601.17514

    msiexec /Option <Erforderliche Parameter> [Optionale Parameter]

    Installationsoptionen
    </package | /i> <Produkt.msi>
    Installiert oder konfiguriert ein Produkt.
    /a <Produkt.msi>
    Administrative Installation - Installiert ein Produkt im Netzwerk.
    /j<u|m> <Produkt.msi> [/t <Transformliste] [/g <Sprach-ID>]
    Kündigt ein Produkt an - m für alle Benutzer, u für den aktuellen Benutzer
    </uninstall | /x> <Produkt.msi | Produktcode>
    Deinstalliert das Produkt.
    Anzeigeoptionen
    /quiet
    Hintergrundmodus, keine Benutzerinteraktion
    /passive
    Unbeaufsichtigter Modus - Nur Statusleiste
    /q[n|b|r|f]
    Legt die Benutzeroberfläche fest.
    n - Keine Benutzeroberfläche
    b - Einfache Benutzeroberfläche
    r - Reduzierte Benutzeroberfläche
    f - Vollständige Benutzeroberfläche (Standard)
    /help
    Hilfeinformationen
    Neustartoptionen
    /norestart
    Kein Neustart nach Abschluss der Installation
    /promptrestart
    Benutzereingabe, falls Neustart erforderlich ist
    /forcerestart
    Computer nach Abschluss der Installation immer neu starten
    Protokolllierungsoptionen
    /l[i|w|e|a|r|u|c|m|o|p|v|x|+|!|*] <Protokolldatei>
    i - Statusmeldungen
    w - Nicht schwerwiegende Warnungen
    e - Alle Fehlermeldungen
    a - Ausführung von Aktionen
    r - Aktionsspezifische Einträge
    u - Benutzeranforderungen
    c - Ursprüngliche Benutzeroberflächenparameter
    m - Informationen betreffend zuwenig Arbeitsspeicher oder schwerwiegendem Abbruch
    o - Meldungen betreffend zuwenig Speicherplatz
    p - Terminaleigenschaften
    v - Ausführliche Ausgabe
    x - Zusätzliche Debuginformationen
    + - An vorhandene Protokolldatei anhängen
    ! - Jede Zeile ins Protokoll aufnehmen
    * - Alle Informationen mit Ausnahme der Optionen v und x protokollieren
    /log <Protokolldatei>
    Entspricht /l* <Protokolldatei>
    Aktualisierungsoptionen
    /update <Update1.msp>[;Update2.msp]
    Übernimmt Update(s).
    /uninstall <Patchcode-GUID>[;Update2.msp] /package <Produkt.msi | Produktcode>
    Entfernt Update(s) für ein Produkt.
    Reparaturoptionen
    /f[p|e|c|m|s|o|d|a|u|v] <Produkt.msi | Produktcode>
    Repariert ein Produkt.
    p - nur wenn eine Datei fehlt
    o - wenn eine Datei fehlt oder eine ältere Version installiert ist (Standard)
    e - wenn eine Datei fehlt oder eine gleiche bzw. ältere Version installiert ist
    d - wenn eine Datei fehlt oder eine andere Version installiert ist
    c - wenn eine Datei fehlt oder die Prüfsumme nicht mit dem berechneten Wert übereinstimmt
    a - Erzwingt die Neuinstallation aller Dateien
    u - Alle erforderlichen benutzerspezifischen Registrierungseinträge (Standard)
    m - Alle erforderlichen Computerspezifischen Registrierungseinträge (Standard)
    s - Alle vorhandenen Verknüpfungen (Standard)
    v - Führt von der Quelle aus und speichert das lokale Paket zwischen
    Öffentliche Eigenschaften festlegen
    [PROPERTY=Eigenschaftswert]

    Weitere Informationen betreffend der Befehlszeilensyntax erhalten Sie im Windows ® Installer SDK.

    Copyright © Microsoft Corporation. Alle Rechte vorbehalten.
    Teile dieser Software basieren zum Teil auf der Arbeit der Independent JPEG Group.


    Auch voicewarmup kann helfen Logging-Eintrag für die Registry.

    Momentan sieht es aber danach aus als ob jemand ein Setup als Textfile getarnt starten will.
    Auf die Idee komme ich vermutlilch auch nur weil ich da schon oft für Bekannte in dem Verzeichnis irgendwelche Viren entsorgen musste.

    G Dietmar

    Achtung Anfänger! :whistling:

    Betrachten des Quellcodes auf eigene Gefahr, bei Übelkeit,Erbrechen,Kopfschmerzen übernehme ich keine Haftung. 8o