【问题标题】:flashvars issueflashvars 问题
【发布时间】:2010-10-29 10:02:30
【问题描述】:

我收到了一个 swf (AS3) 文件,当您通过 flashvars 传递变量时该文件可以工作。我不能重新编译它以以不同的方式工作,因为我们只购买了编译后的 swf,而不是源代码。

我们可以在 HTML 页面中使用它,但问题是我们必须使用它(在某种专有的)Windows 窗体中(基本上,一个应用程序,它采用路径并以形式)。

现在:我们无法通过将 swf 变量附加到路径来传递它们,也无法重新编译 swf。有没有其他方法可以将两个变量传递给 swf 以使其工作?我们认为我们可以让另一个带有硬编码变量的 swf 为最后一个加载专有 swf,以便在加载后读取它们,但不幸的是它不起作用。有任何想法吗?问题是专有 swf 正在等待变量通过:

LoaderInfo(this.root.loaderInfo).parameters['varName']

编辑 1:我做了另一件事。我从另一个 swf 加载了 swf,并通过 URLVariables() 传递了变量。它不起作用:编译器说找不到该路径(引发 I/O 错误)。

编辑 2:我不知道它是否安全,但它似乎按照我在“编辑 1”中所说的方式工作。我认为 swf 无法编译,但它似乎并不太关心编译器抛出的错误 #2044 和 #2035。

我会说 [已解决],但如果您有任何 cmets,我会很高兴阅读它们。

【问题讨论】:

    标签: flash actionscript flashvars


    【解决方案1】:

    您是否尝试将变量放在 url/查询字符串中?我不确定变量是否安全或需要,但应该这样做。

    【讨论】:

    • 除非您将 URL 参数传递给 flash 参数,否则它不会与 flash 交互。
    • 是的,我知道。但是您可以通过查询字符串传入变量。这就是我的意思,并不是说您不必使用 LoaderInfo 类...
    【解决方案2】:

    来自强类型语言,这让我大吃一惊,但如果您在 flashVars 中声明一个变量,则无需执行以下操作:

    var flashVar = LoaderInfo(this.root.loaderInfo).parameters.flashVar;
    

    实际上,您根本不需要声明 flashVar,因为它已经被声明为参数。您可以只引用该名称的 flashVar,无需声明。这种语言让我觉得很傻。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-12-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-14
      • 1970-01-01
      • 1970-01-01
      • 2011-12-14
      相关资源
      最近更新 更多