【问题标题】:Flash IDE, Haxe & OpenFL - Invalid Data Swf Error #2136Flash IDE、Haxe 和 OpenFL - 无效数据 Swf 错误 #2136
【发布时间】:2014-03-31 17:50:00
【问题描述】:

我们最近遇到了一个节目停止问题,似乎在网上找不到任何其他人有同样的问题(尽管有类似的问题)。

我们目前正在使用 Haxe 和 OpenFL 开发一款游戏。我们使用 FlashDevelop 编写游戏代码,使用官方 FlashIDE (CS6) 创建 UI/菜单,然后通过 FlashDevelop 中的代码连接。几周前,FLA 正在开发时,FlashIDE 崩溃了。由于文件正常打开,似乎没有任何问题,但是,在 FlashDevelop 中构建我们的游戏后,我们收到以下消息“Invalid Data Swf Error #2136”。从那时起,我们做了一些似乎可以暂时修复它的事情,但截至目前,这些解决方案都不起作用。在这一点上,我们认为这是某种闪存限制或 OpenFL、Haxe 和 FlashIDE(或它们的某种组合)的问题。

我想指出,我们注意到一些奇怪的行为 - 如果我们删除任何剪辑,错误就会消失,如果我们重新添加它,错误就会返回。

这是我们尝试过的:

  • 重新创建崩溃后创建的影片剪辑
  • 将 FLA 转换为存档并使用 WinRAR 修复它
  • 将 FLA 拆分为两个文件
  • 将库复制到新的 FLA 文件中

任何关于如何解决此问题的想法将不胜感激!

【问题讨论】:

    标签: flash flashdevelop haxe 2d-games openfl


    【解决方案1】:

    编译成swf,反汇编,就可以找到格式错误的具体地方了。 (反汇编部分可以使用 haxe 轻松完成,因为它已经拥有了所有的库。)

    我不确定,但应该可以在修复后回收从 swf 到 fla 的所有内容,这样您就可以修复代码中的所有错误。

    如果无法回收,那么您只需重新创建您会发现格式错误的实体。

    【讨论】:

    • 我们究竟是如何做到这一点的?我们被告知要“修复”未压缩的/XML,但我们不知道实际损坏的是什么。
    • 嗯...正如我之前所说,通过解析生成的 swf 并找到确切的位置格式是错误的。
    • 我想我可能有点困惑。我假设将 FLA 保存为 XFL 并检查 XML 数据会产生相同的效果。问题是 XML 数据是有效的,但如果 XML 中有任何数据损坏,我不知道。
    • 你能告诉我“错误格式”的例子,以便我知道我在找什么吗?因为没有明确指示损坏的符号/形状是什么样的。
    • 我猜可能有数百个选项。只需使用格式库。 format.swf 包是你的起点,当你需要时,你可以在树下到实际数据时添加其他包。但是,可能只是 format.swf 就足够了。解析格式不正确的数据时会抛出异常。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-01-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-25
    • 2021-01-19
    相关资源
    最近更新 更多