我正在尝试使用“Adobe Native Extensions” - Adobe Flash Builder 4.5中发布的最新功能之一。我试图借助Adobe Native扩展在Adobe 7和Windows 7上的本机C ++应用程序之间进行通信。 (当然,我们今天可以使用NativeProcess API执行此操作,但ANE功能更强大)
我按照以下文章中提到的步骤操作: http://thingsico.de/blog/tag/native-extensions/
FlashRuntimeExtensions.h
和FlashRuntimeExtensions.lib
)使用以下命令行构建sampleANE。
"C:\Program Files (x86)\Adobe\Adobe Flash Builder 4.5\sdks\Air3.0_flex4.5.1\bin\adt" -package -storetype pkcs12 -keystore "certs\vlabCert.p12" -target ane "TestSampleANE.ane" "bin\extension.xml" -swc "bin\SampleAne.swc" -tsa none -platform Windows-x86 -C "bin"
我在这里面临一个小问题w.r.t。时间戳,我通过将-tsa none
添加到上面的命令来导航。我能够成功生成HelloAne.ane
TestSampleAne.ane
和SampleAne.swc
包含在项目的lib文件中。我能够成功访问SampleAne
对象,以及ActionScript代码中的公共函数,并且可以成功编译应用程序。但是,当我尝试启动应用程序时,它给出了以下错误:Process terminated without establishing connection to debugger.
Not supported native extensions profile
Launch command details: "C:\Program Files (x86)\Adobe\Adobe Flash Builder 4.5\sdks\Air3.0_flex4.5.1\bin\adl.exe" -runtime "C:\Program Files (x86)\Adobe\Adobe Flash Builder 4.5\sdks\Air3.0_flex4.5.1\runtimes\air\win" E:\ANE\SampleAirProject\bin-debug\SampleAirProject-app.xml E:\ANE\SampleAirProject\bin-debug
起初,我认为问题是由于我使用的是Flash Builder 4.5而不是4.5.1(Adobe推荐使用ANE)。所以,我下载了补丁并对其进行了升级。我甚至检查过我的机器上有AIR 3.0运行时。但即便如此,问题仍然存在。
答案 0 :(得分:13)
将-profile extendedDesktop
添加到启动命令或将以下行添加到应用程序描述符XML文件(application.xml
)
<supportedProfiles>extendedDesktop</supportedProfiles>
为我修复了这个错误。
答案 1 :(得分:4)
转到“项目/属性/ Flex构建打包”选项卡,然后单击“本机扩展”选项卡,并选中本机扩展名行中的“包”框。这对我有用。
答案 2 :(得分:2)
(出于某种原因,我无法添加评论来询问您,但是)您是在32位还是64位上运行Flash Builder?我认为adl不支持64位