我需要在 Chrome 中测试 Flash 崩溃...有人知道如何使 Flash 崩溃或有一个 Flash 电影文件故意崩溃吗?
编辑:在弄乱了我的应用程序之后,我确定我真正需要的是一种测试 Chrome 选项卡何时崩溃的方法,我发现尝试chrome://crash/
在任何 Chrome 选项卡中访问都可以解决问题。我真的只是想使 Chrome 选项卡崩溃,并认为我可以使用 Flash 来做到这一点,但它变得比这简单得多。我仍然选择了下面的答案。
我需要在 Chrome 中测试 Flash 崩溃...有人知道如何使 Flash 崩溃或有一个 Flash 电影文件故意崩溃吗?
编辑:在弄乱了我的应用程序之后,我确定我真正需要的是一种测试 Chrome 选项卡何时崩溃的方法,我发现尝试chrome://crash/
在任何 Chrome 选项卡中访问都可以解决问题。我真的只是想使 Chrome 选项卡崩溃,并认为我可以使用 Flash 来做到这一点,但它变得比这简单得多。我仍然选择了下面的答案。
电影本身需要崩溃还是加载器可以?无限负载循环怎么样?
var i = 0;
while(i < 1)
{
//load your movie
}
这将在大约 15 秒左右后使 Flash 崩溃。
一个无限循环将阻塞 Flash 大约 15 秒,之后 AVM 将强制停止执行有问题的代码块。这不会阻止 AVM 执行其他代码,或完全崩溃。
在 Flash Player 10.3 之前,如果您真的想用 Flash 破坏 Web 浏览器,有几种方法可以做到。一个是...
var n:Vector.<int> = new Vector.<int>(-1);
另一个是...
var n:ByteArray = new ByteArray();
n.length = int.MAX_VALUE;
如果您运行 FP 10.2 或更低版本,则 ByteArray 可以保证任何浏览器都死机。然而,从 10.3 开始,它现在抛出一个可捕获的错误(#1000,内存不足)并继续执行其他代码。
从 FP 10.3 开始,Vector 方法停止其轨道中的所有代码执行,而不会引发错误。但它不再使浏览器崩溃;现在它只是停止 Flash 并用带圆圈的感叹号替换插件窗口。
因为它不再使浏览器崩溃,所以 ByteArray 方法不再用于防止 mm.cfg 引导程序或运行时反编译器。Vector 方法在某些狭隘的情况下仍然有用,了解 mm.cfg 定义的预加载器将寻找 allComplete 事件,并且您需要在此之前停止执行(即直接从主构造函数调用)。
幸运的是,有一种保证 Flash 11,2 崩溃的新方法,即在 Ubuntu 下的 Chrome 中运行它,然后将富文本粘贴到输入文本字段中:P
最简单的方法是在 Chrome 浏览器上进行测试,转到选项 -> 更多工具 -> 任务管理器 -> 找到“插件:Shockwave Flash”并点击“结束进程”