Beiträge von Dankeschön

    Ich nutze Avast! Free jetzt schon seit einigen Jahren und die haben die Werbung halt immer mehr hochgeschraubt.
    Avast an sich finde ich auch super, und auch die Konkurrenz macht ordentlich Eigenwerbung (logisch, sonst finanziert sich sowas nicht) aber ich bekomme halt alle paar Stunden unten rechts ein Popup mit irgendwelchen "News" (aka Bedrohung, kauf dir mehr) oder anderen Produkten.


    Alle Zusatztools etc. hab ich auch deaktiviert (Updater, Grim-Fighter etc) und die Popups auf extra kurz gestellt, die Werbepopups werden davon aber nicht beeinflusst. Trotzdem kommen die leider recht oft und bleiben ca. 20 Sekunden - seehr nervig :D


    Ich habe den Startpost editiert. Beim Quellcode werden Virenmeldungen nichtmehr blockiert. Kompiliert ist es die alte Version.

    Hat mich stark gewundert dass es das bisher noch nicht gab, deswegen hier das sehr kleine Skript mit dem die nervigen Werbepopups von Avast verschwinden.


    Notizen dazu:

    • Virenmeldungen etc. werden wahrscheinlich auch blockiert
    • Avast wird seine Methode, sobald die das hier sehen, möglicherweise anpassen
    • Ja, ich weiß dass das nicht viel Arbeit ist. Leuten die danach googlen (wie ich) wird das aber sicher viel bedeuten.
    • Bitte meldet Bugs (bzw sobald die das so Ändern dass untenstehender Code nicht mehr funktioniert)



    Im Anhang auch das ganze kompiliert und digital signiert.
    Einfach in den Autostart und genießen!

    Der Fehler lag doch lediglich am Pad-ding.


    PHP kommt mit beiden Pads klar,
    AutoIt nur mit sienem eigenen.


    Nutzt man folgende Funktion in PHP bevor man den Text verschluesselt,
    akzeptiert AutoIt den Text auch.


    Code
    function pkcs5_pad ($text, $blocksize=16)
    { // by duerra (http://us3.php.net/manual/en/ref.mcrypt.php#69782)
    $pad = $blocksize - (strlen($text) % $blocksize);
    return $text . str_repeat(chr($pad), $pad);
    }

    Abend zusammen.


    Ich verzweifle seit nun zwei Tagen an einem merkwuerdigen Verhalten von AES-Verschluesslungen in PHP & AutoIt.


    Ich teste simultan folgende Skripte:


    Autoit


    PHP



    Allgemein
    Wenn ich per AutoIt verschluessle und per PHP entschluesse, bekomme ich exakt (!) den verschluesselten Text zurueck.
    Verschluessle ich allerdings per PHP und versuche per AutoIt zu entschluesseln, ist das Output leer (@error = 2).


    In beiden Beispielen verschluessle ich mit dem selben IV und dem selben Key denselben Text, und bekomme unterschiedliche Ergebnisse :huh:
    Ergebnis der PHP-Verschluesslung: A7B3D72F3291A4744E97676E667A04B6
    Ergebnis der AutoIt-Verschluesslung: AEF37004C25E90D2D5D69C9390E0D9D8


    Aber es wird noch merkwuerdiger - wenn ich per PHP beide Datensaetze entschluessle, ergeben beide das richtige Ergebnis!
    AutoIt hingegen nimmt nur seinen eigenen String.



    Also, wenn mir jemand das Problem und am besten auch seine Loesung erklaeren koennte, waere ich sehr dankbar :)
    Sonst muss ich wohl das Galileo Mystery Team rufen ;)


    P.S.: Ja, ich habe bereits in verschiedenen Google-Eintraegen von verschiedenen Pads der Texte in PHP & AutoIt gehoert.
    Leider haben entsprechende Tests nichts am Ergebnis veraendert.
    AutoIt's Decryptfunktion ist anscheinend extrem streng :S

    Das stimmt wohl, das war lediglich ein Versuch weil nur Hex ein falsches Ergebnis zurueckgab.


    Nachdem ich nach MD5-Beispielen gesucht hab, hab ich jetzt den Unterschied gefunden.
    So entspricht dem simplen SHA1-Befehl in PHP folgender Autoit-Code:
    $iv = StringToBinary("text",1)
    $iv = _Crypt_HashData( $iv , $CALG_SHA1)
    $iv = Hex($iv)
    $iv = StringLower($iv)

    Ich wuerde gerne zwei SHA1-Hashwerte je in AutoIt und PHP erstellen und vergleichen.
    Leider sagt mir Google dazu ueberraschenderweise absolut garnichts.


    PHP

    Code
    $hash = sha1($text);


    Erster AutoIt-Versuch
    _Crypt_HashData( $iv , $CALG_SHA_512)
    Problem: Gibt laut Doku einen Binaerstring zurueck, auch wenn dieser mehr nach Hex aussieht (fuehrende 0x).


    Zweiter Versuch
    $iv = _Crypt_HashData( $iv , $CALG_SHA_512)
    $iv = BinaryToString($iv)
    $iv = _StringToHex($iv)
    Problem: Nicht der richtige Wert



    Fuer Hilfe, wie ich in AutoIt den PHP-SHA1-Hash bekomme, waere ich dankbar :)

    So eine ähnliche Theorie hatte ich ja auch,
    aber du hast eine Kleinigkeit vergessen.


    Und zwar braucht man den PC nicht neuzustarten.
    Alles geht ja wieder wenn man über Flash die Kamera nutzt.
    Flash scheint da also alles irgendwie zurückzusetzen.
    Und wenn die das können, gehts sicher auch anders
    (oder man kann Flash irgendwie fernsteuern dass die Webcam wieder "gefixt" wird)

    Dass das nicht geht habe ich bereits herausgefunden.
    Habe ich nämlich bspw die Kamera im Browser geöffnet und will sie nutzen,
    ist das Bild komplett grün.
    Mach ich den Tab hingegen zu, geht alles problemlos.


    Ohne den Erstversuch von Flash hingegen bleibt das Bild immer schwarz.
    Die Frage ist: Wieso? Und wie kann man dem entgegenwirken?

    Da dies die einzige deutsche UDF ist und ansprechend ist,
    nehme ich mir mal das frevelhafte Recht heraus,
    dem Thema den Bart zu schneiden ;)


    Und zwar bekomme ich nur ein schwarzes Bild!
    System: Win 7 64bit


    //edit:
    Ab und zu geht es, ab und zu nicht.
    Habe mittlerweile rausgefunden dass es nicht geht,
    wenn ich beim Initialisieren eine Videoquelle auswählen muss.


    Habe ich allerdings über Flash (Firefox Browser) eine Seite offen die auf die Kamera zugreift und schließe ich diese Seite,
    so entfällt der Dialog und die Kamera geht.


    Rätselhaft...

    Stell dir vor, die Idee hatte ich auch.
    Hab mir den Quellcode der INet.au3 angeschaut und gesehen,
    dass das einfach INetRead nutzt -> für mich also kein IE.


    Hab dann mal zum Test die Registrywerte aus deinem Link erstellt,
    und man stelle sich vor - es geht! :)


    Unglaublich, riesiges Danke für diesen Fehler,
    den ich wohl sonst nie gefunden hätte!

    Brauchst du ja nicht ;)


    Du erstellst ein Fenster was aussieht wie das der Netzwerkumgebung ohne jegliche Unteroptionen als Liste mit den Optionen Netzwerkumgebung und Arbeitsplatz.
    Klickt man nun auf eine Option der Liste,
    lässt du die GUI verschwinden und lässt FileSelectFolder die ganze Arbeit übernehmen.

    Scheint nicht zu gehen (Google, Hilfe, Tests (mit BitOr ;) )).
    An einer eigenen GUI, wenn du das in dieser Form anbieten willst,
    kommst du also nicht vorbei.


    Du könntest daher auch einfach die GUI einbauen,
    zwischen Arbeitsplatz und Netzwerkumgebung entscheiden lassen
    und dafür dann das jeweilige Fenster öffnen.
    Das erspart dir zumindest viel Arbeit ;)

    Benutze doch bei der Query mal das Debugging, was du auch in Zeile 86ff nutzt.
    Offensichtlich klappt die Query nämlich nicht oder gibt keine Daten zurück.


    Ansonsten würde ich so rangehen:
    a) Anzahl der Ergebnisse abfragen
    b) Query ausgeben lassen und auf Syntax überprüfen und in phpmyadmin eingeben


    Danach sollte der Fehler schon klar sein.

    Meine Idee wäre es, eine Javascript-Datei oder einen iframe in den Quellcode der echten Seite einzubinden,
    welcher eine PHP-Datei auf deinem Webserver aufruft,
    welche wiederum in einer Datenbank IP und letzte URL koppelt.


    Dann ein Gegenstück in PHP machen und die IP des Users per _INetGetSource übergeben,
    die URL aus der Datenbank auslesen und ausgeben.


    Ist auf jeden Fall verlässlicher als Send, diskreter und mehr Arbeit :P
    (wenn auch nicht sonderlich viel)

    Abend zusammen.


    Ich habe nun seit etwa nem Jahr mich nicht mehr aktiv mit AutoIt beschäftigt,
    und als ich die Tage meinen Downloadmanager auf eins meiner neuen Projekte zuschneiden wollte,
    trat ein für mich nicht logisches Problem auf.
    In der Hilfe und über Google habe ich dazu nichts gefunden.


    Das Problem tritt auf sobald zwei Downloads laufen und der dritte gestartet wird.
    Kaum passiert das, bleibt das Fenster hängen (der Status der Datei in der Übersicht ist "go source (...)", Z. 939).
    Durch das Debugging habe ich rausgefunden, dass _INetGetSource solange hängt,
    bis zwei Downloads abgelaufen sind.
    Endet also während sich das fenster aufhängt (Download im Hintergrund geht) ein Download,
    beendet sich _InetGetSource wie gewünscht, der Download startet und,
    sofern es noch Downloads danach gibt, friert das Fenster wieder ein mit "go source" beim nächsten Teil.


    Da ich weiß dass ich früher in dem Downloadmanager 3-5 Downloads ohne Probleme laufen lassen konnte,
    bin ich da aktuell sehr ratlos und brauche daher eure Hilfe :)


    Grüße,
    Dankeschön

    Problem gelöst.


    Habe mal nach dem InetGetInfo @error gegoogelt,
    und da stand, dass der Fehler bei einem nicht-beschreibbarem Pfad kommt,
    wenn dieses als Zielpfad gesetzt wurde.


    Dann habe ich mal nachgeschaut,
    und gemerkt, dass der Name meines Accounts sich
    nach der letzten Windows-Neuinstallation um einen Buchstaben geändert hat,
    der alte Pfad aber noch eingetragen war.


    Trotz allem danke für die Unterstützung :)

    Wie man die Autoit-Hilfe bedient, weiß ich auch.


    Und danke für diesen wertvollen Schnipsel,
    in meinen 3 Jahren Skripting wusste ich davon garnichts ;)


    Danke für deinen Versuch,
    aber helfen tuts mir garnicht :(

    Das Problem ist,
    dass ich da an vielen Stellen interagiere,
    etc.


    Egal, hier einfach das gesamte Skript,
    ich hoffe, ich habe alle Passwörter rausgetan...
    ~zip~
    (P.S.: Das Skript löscht sich nach ner Zeit von selber... ;) )