1

我有大约 1000 个 SWF 文件,它们都通过ExternalInterface.

我无权访问这些文件的源文件,也无法编辑它们。

我的基本问题是它们都在调用不同的函数,并且 Flash AS3 脚本挂起,直到它得到函数的响应。

我希望做的是检测从 JavaScript 中的 SWF 文件调用的函数,然后动态创建函数,但是,为了做到这一点,我需要先检测被调用的函数。

有没有办法在 JavaScript 中做到这一点?

4

3 回答 3

0

不,这在 JavaScript 中是不可能的。

于 2012-09-25T16:11:36.663 回答
0
  1. 我不知道有多少变化,但是否可以在几个 swf 上使用反编译器来查看调用了哪些 ExternalInterface 调用?尝试在线反编译器http://www.showmycode.com/

  2. 您可以使用http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/events/UncaughtErrorEvent.html从 Flash 捕获未定义的错误UncaughtErrorEvent

  3. 我不知道 javascript 是否会抛出错误?您也可以使用https://developer.mozilla.org/en-US/docs/DOM/window.onerror从 javascript 中捕获错误window.onerror

于 2012-09-25T23:06:29.417 回答
-1

您能否解释一下您对 SWF 文件的控制程度以及您想要实现的具体目标是什么?

这些是 AS2 还是 AS3 吗?是否有加载这些 SWF 文件的主 SWF 文件?

我正在查看文档,似乎ExternalInterface.marshallExceptions与 结合使用UnhandledErrorEvent,您可能会从 Flash 端检测到不存在的函数调用。

http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/external/ExternalInterface.html#marshallExceptions

于 2012-09-25T23:41:37.127 回答