Flash Player LocalConnection Shared Memory native Code -Bibliothek
Diese Bibliothek ist eine native Code -Bibliothek, um eine Verbindung zu der von Flash Player verwendeten LocalConnection -API herzustellen. Dies erfolgt durch eine Verbindung mit demselben gemeinsamen Speicher und demselben Semaphoren, um das Messaging -System zu lesen und zu schreiben. All dies wurde durch Reverse Engineering in den von Flash Player verwendeten API- und Messaging -Formaten ermöglicht.
Die Bibliothek wurde gegen Flash Player 6 und UP getestet (Flash Player 6 führte die LocalConnection) und Flash Player unter Windows, Mac und Linux werden alle unterstützt.
Diese Bibliothek wird gegen die Compiler Clang, GCC, MSVC und Mingw getestet. Siehe Travis und Appveyor CI -Konfiguration für genaue Versionen, die getestet werden. Die Bibliothek wird wahrscheinlich auch mit anderen kompatiblen C99 -Compilern zusammenarbeiten.
Weitere Beispiele finden Sie im util -Verzeichnis. Einige Dinge sollten berücksichtigt werden.
data sind eine Reihe von AMF -codierten Daten, AMF0 oder AMF3, abhängig von der Nachricht ( size definiert, wie groß die codierten Daten sind).hostname:connection-name ( example.com:name , localhost:name )_global-connection-name ( _domainshared:name )example.com = example.comwww.example.com = example.comabexample.com = b.example.com ).is_per_user so, dass sie der in Actionscript verwendeten isPerUser -Eigenschaft entspricht (die Standardeinstellung ist und wird wahrscheinlich false bleiben, und diese Eigenschaft ist in älteren Versionen von Flash Player selbst nicht verfügbar).flshm_lock und flshm_unlock , um das Semaphor für den exklusiven Zugriff auf den gemeinsam genutzten Speicher beim Lesen und Schreiben von Nachrichten und Verbindungen zu sperren, um Probleme mit den Rennbedingungen zu vermeiden.flshm_close , um von der Bibliothek zugewiesene Speicher zu vergeben, und vermeiden Sie Speicherlecks.Wenn Sie einen Fehler finden oder Kompatibilitätsprobleme haben, öffnen Sie bitte ein Ticket im Abschnitt mit Ausgaben für dieses Repository.
Pull-Anfragen sind ebenfalls willkommen, aber alle Änderungen müssen plattformübergreifend sein, um zusammengeführt zu werden.
Copyright (c) 2016-2019 Alexander O'Mara
Lizenziert unter der Mozilla Public Lizenz, v. 2.0.
Wenn diese Lizenz nicht für Sie funktioniert, können Sie mich gerne kontaktieren.
Wenn Sie meine Software nützlich finden, erwägen Sie bitte die Entwicklung der unabhängigen und Open-Source-Software, indem Sie auf meiner Website unter Alexomara.com eine bescheidene Spende leisten.