Gibt es eine Möglichkeit, eine Liste der exponierten Funktionen von einem Flash-Objekt zu erhalten? Sie können beispielsweise eine Liste aller Methoden in einem Objekt abrufen, indem Sie Folgendes ausführen:
%Vor% Das einzige Problem ist, dass dadurch keine über die API ExternalInterfaces registrierten Methoden verfügbar gemacht werden. Ich kann versuchen zu sehen, ob die Funktion existiert ( object['method']
) und es sagt mir, dass es eine Funktion ist, aber ich müsste jede existierende Methode auf diese Weise erraten.
HINWEIS: Offensichtlich habe ich keinen Zugriff auf das ActionScript.
Schlagen Sie einfach diese Frage, ein bisschen zu spät es scheint, aber ich werde trotzdem eine Antwort posten;) Mit IE10 (Windows 7) funktionierte es vollkommen in Ordnung für mich, alle meine Methoden wie folgt aufzulisten:
%Vor%Beachten Sie, dass dies in Chrome oder Firefox und nur mit der genauen Regexp nicht funktioniert hat, da IE10 keinen "nativen Code" meldet wie die anderen Browser.
Nur eine Vermutung, aber sehen Sie, ob es funktioniert. Alle ExternalInterface-Funktionen sollten im globalen Namespace definiert sein. Versuchen Sie, die SWF-Datei in eine HTML-Seite einzubetten und alle Javascript-Funktionen für die Seite zu aktivieren, nachdem die Seite geladen wurde. Liste der globalen benutzerdefinierten Funktionen in JavaScript?
Die Liste der Funktionen sollte die in der SWF-Datei definierte Liste sein.
Mein Instinkt ist nein, ExternalInterface ist im Wesentlichen eine Blackbox oder ein schwarzer Briefkasten, man steckt Dinge durch und manchmal kommen Dinge zurück, aber man kann die Tür nicht öffnen, um zu sehen, was drin ist.
Ohne Dokumentation darüber, was in der SWF veröffentlicht wurde, ist der einzige andere Vorschlag, die swf zu dekompilieren, um einen Blick auf die Quelle zu werfen.
Tags und Links javascript flash externalinterface actionscript