将Flash Player嵌入C ++或Java应用程序中?
我想将Flash Player直接嵌入到C ++或Java应用程序中。
我发现了一篇描述如何为C#执行此操作的文章: http : //www.adobe.com/devnet/flash/articles/stock_history03.html
不幸的是,我没有使用C#,COM或ActiveX的经验。 我需要有人将此代码转换为C ++,允许我将Flash Player嵌入到Win32窗口中。 最后,我想使用这些信息将Flash嵌入到Java应用程序中。
我正在寻找三个主要function:
- 能够播放Flash电影
- 能够接收事件(例如鼠标点击)
- 能够发送事件
编辑:如果可能的话,我更喜欢开源解决方案。
我不知道如何在C ++中嵌入flash,但Christopher Deckers( SWTSwing成名)开发了一个有趣的hack,允许它嵌入Java中。 您可以在Javalobby公告主题中找到更多信息。
不久前我给了同样的答案。 查看SWHX:
http://code.google.com/p/screenweaver-hx/
http://code.google.com/p/screenweaver-hx/source/browse/trunk/src/np_host.c
干杯!
胡安
如果它必须是开源的,我会考虑Gnash ,一个开源的flash实现。
它适用于所有主要平台,支持大多数多媒体编解码器,并且应该通过nsapi嵌入到应用程序中。
如果你想使用商业解决方案,我建议使用Scaleform GFx 。 虽然这并不便宜,但它真好。
在窗口中创建Flash播放器的一种简单方法:AtlAxCreateControlEx。
要接收和发送活动,您需要一个接收器:AtlAdvise。 您还需要在ActionScript(即Flash)端定义接收事件的函数。
您应该使用的是Netscape Plugin API 。 它是原生的,它是所有优秀的浏览器用来加载Flash播放器插件的东西。 虽然实际的Flash播放器不是开源的,但这个API是。
如果您不打算随应用程序发送flashplayer副本:
您的应用应该在运行时检查Flash播放器,如果没有找到它,应该提醒用户(通常通过提供Adobe的链接下载它)。 Flashplayer插件通常安装在Windows上的%AppData%\Mozilla\plugins
中。
看看FlashDX 。 它是开源和免费的。
我个人没有试过这个,但是在SWT / Java的情况下你可以在你的SWT / Java应用程序中嵌入SWT浏览器窗口,在浏览器视图中你可以将内容与flash内容一起使用,然后用闪存电影与Merapi桥进行交流。 java的。