0

我正在开发一个 AIR 应用程序,该应用程序使用我为同一项目开发的 Windows 原生扩展。该应用程序调用一个被调用的 ANE 方法pingFunction,并将一个包含 IP 地址的字符串传递给它pingFunction,不管你信不信,它将执行 ping 测试。

该应用程序及其 ANE 在 Flash Builder 上运行良好,即使在发布后,它们在开发 PC 上仍然像魅力一样工作。问题是我在另外两台计算机上尝试过,应用程序抛出以下错误:

ArgumentError: Error #3500: The extension context does not have a method with the name pingFunction. 
at flash.external::ExtensionContext/_call() 
at flash.external::ExtensionContext/call() 
at com.mycompanyname.myappname::MyAppName/sendPing()[...  

在开始时,我认为我必须使用我使用 Visual Studio 上的 Debug 配置而不是 Release 配置编译的 DLL,因为我读到有时 DLL 的调试版本可以使用外部 DLL . 因此,我对其进行了更改并将整个库重新构建为发布版本。对我来说可悲的是,我仍然遇到同样的结果。

另外,我尝试将swf-versionAIR 应用程序和 ANE 都更改为我正在使用的 AIR SDK 版本(14.0),但又遇到了同样的错误。

开发计算机正在运行 Windows 8.1 和其他应用程序无法运行的计算机,Windows 7 和 Windows 7 Service Pack 1。

关于为什么会发生这种情况的任何想法?任何可能使我走上正轨的问题或意见将不胜感激。

4

1 回答 1

0

错误#3500 即将到来,因为您没有在这些机器上安装所需的运行时,这是执行任何 c++ 代码所必需的。
在您的开发机器上,您安装了 Visual Studio,因此您也有 msvcr。

问题的解决方法是:

从这里安装 msvcr 即 Microsoft Visual c++ redistribution - 2012 。

你需要 msvcr 任何你想运行任何 VS 编译的 C++ 代码的地方。


于 2015-07-15T12:35:04.947 回答