我面临着重新刷和更新一个近 10 年的 Screenweaver 项目的挑战,并寻找一个体面的现代 swf-exe 转换器。没有太多时间来评估所有选项,因此我想听听使用这种工具的实际工作经验的回应。
由于 WinAPI 交互是必须的,因此默认投影仪不是一个选项。
类似的问题(那里没有具体的答案)
使用 Flex 3 从 SWF 创建 EXE 而不需要 AIR?
非常感谢
UPD:任何可以帮助我提供实际答案的人都可以获得 300 赏金。
我面临着重新刷和更新一个近 10 年的 Screenweaver 项目的挑战,并寻找一个体面的现代 swf-exe 转换器。没有太多时间来评估所有选项,因此我想听听使用这种工具的实际工作经验的回应。
由于 WinAPI 交互是必须的,因此默认投影仪不是一个选项。
类似的问题(那里没有具体的答案)
使用 Flex 3 从 SWF 创建 EXE 而不需要 AIR?
非常感谢
UPD:任何可以帮助我提供实际答案的人都可以获得 300 赏金。
很长一段时间以来,我一直在试验不同的 SWF 投影仪,到目前为止,我认为我已经尝试了大部分(如果不是全部的话)。我在下面更详细地解释了我使用过的最好的投影仪。
MDM锌
http://www.multidmedia.com/software/zinc/
我记得当我使用 Vista 时,MDM 在该操作系统下运行有很多错误。他们花了一段时间来修复这些错误——这些错误并没有阻止它运行,但确实干扰了程序中某些方法的功能。出于这个原因,我决定不再继续测试 Zinc,而是转而使用另一台投影机。尽管如此,我确信他们现在已经修复了这些错误。
该程序本身有一个很好的直观界面,并允许您创建屏幕保护程序以及 EXE(这显然对您有好处)。
该产品价格昂贵——目前为 349.99 美元,所以这让我很反感。您还可以生成非常有吸引力的 Mac 和 Linux 投影仪,但需要为每台投影仪提供额外的许可证,这确实要花很多钱。
SWF工作室
这是我非常喜欢使用的投影机之一。它功能齐全,拥有强大的社区支持,开发人员随时为您提供帮助。它生成的投影仪与所有 Windows 操作系统兼容,而且我从来没有遇到过任何关于这个错误的问题。
Northcode 还以 49 美元的价格提供 SWF Studio 的学生许可证。我几乎与这些人一起购买了许可证,但我没有购买的唯一原因是因为我找到了另一台更适合我的场景的投影仪,我稍后会介绍。
我可以告诉你,我不使用这台投影机的原因之一(它听起来很微不足道)是因为它的文件很大。SWF Studio 允许您根据文件大小选择您想要的投影仪大小 - 我认为可以使用小型和紧凑等选项,但较小的文件类型可能与目录中的其他文件有依赖关系。这意味着您必须将您的应用程序与一些文件夹和附加文件以及 EXE 本身捆绑在一起。
SWF Studio 还可以选择创建屏幕保护程序。
m投影仪
http://www.screentime.com/software/flash-projector
自从我上次使用以来,mProjector 已经升级了一个版本(从 3 到 4),所以它可能会在这个版本中包含更多的功能。我记得该产品的透明度非常好,并展示了一些“屏幕伙伴”,它们使用透明度虚拟地在您的屏幕上走动。我没有使用这台投影机的原因是因为它没有我想要的那么多 Actionscript 功能,但我相信它现在有更多。在您的项目中,这不是什么大问题,因为您需要一个屏幕保护程序。
Windows 和 Mac 兼容的价格合理,为 399 美元,但如果您希望以更便宜的价格购买,您可以只购买 Windows 或 Mac。
Janus 闪电侠
我打算更详细地解释这个产品,但我现在意识到该网站不再存在!Janus 是我最喜欢并最终使用的投影仪,因为您的代码中有大量可用的功能。
就像我上面提到的所有投影仪一样,每一台都为闪光灯添加了您通常不会通过 SWF 获得的功能。每个产品都包含预构建的 actionscript 方法,这些方法可以与操作系统本身交互,以执行您在 Flash 沙箱中无法执行的操作。例如,这些投影仪中的每一个都允许您在计算机上操作文件(添加、编辑、删除等)。在我尝试过的所有投影仪中,Janus 拥有最多的可用方法。这部分是因为 Janus 使用了 .NET 框架(这意味着在您执行投影仪的系统上需要 .NET 2.0)。
与 MDM Zinc 一样,该产品也允许您为 Mac 创建应用程序。当我直接联系他们解释说我是学生时,我也设法获得了更便宜的价格。我最近联系了 Janus-Flash 询问产品的未来,他们说他们将来可能会重新发布 Janus,但现在它已经下架了。
我使用的其他一些值得一提但我没有详细解释的产品:SWFKit、Jugglor、F-IN-BOX(更多开发人员相关,因为它需要切割代码)。
快速搜索会显示这些可能值得一看的内容:Flash2Me、Flash EXE Builder和SWF to Screensaver。
对于您的项目,我认为最好的选择是 SWF Studio。它有很多不错的脚本功能,您可以使用它来与操作系统交互,而且完整许可证的价格也很不错,为 299 美元。
我希望这有助于您决定使用哪种投影仪,并且可以让您免于尝试许多不同的投影仪,就像我几个月以来所做的那样!
我们在核心 API 中直接支持许多 Win32 功能,因此您可能甚至不必直接调用 API,但如果您这样做...
SWF Studio 有一个高级插件 API,允许您使用 C++、C# 或 VB.NET 编写自定义插件,以便您可以调用 win32 或 .NET 函数。我们创建了自己的非托管到托管代码 shim,因此您可以编写本机 .NET 插件并从 SWF Studio 调用它,就像编写 Win32 插件一样容易。
在 AS2 或 AS3 中调用 SWF Studio 函数的方式没有区别。我们在 API 中保持了 100% 的向后兼容性。无论您使用的是 AS2 还是 AS3,您的通话都可以正常工作。他们将继续工作。
然而,我们真正闪耀的地方是支持。我创建了 SWF Studio,但我仍然每天都在论坛中回答问题和修复错误。
我在这里的经历是从一年前开始的。
与 mProjector 合作后,我可以告诉您,AS3 API 非常强大且易于使用。我能够使用外部资产将一个基于 swf 的大型项目打包到一个 EXE 中,而不会出现很多问题。mProjector 的项目 gui 的 UI 有一些不足之处,但文件系统的实际挂钩很容易使用。
困难在于并非所有内容都被记录在案。事实上,一年前就有很多无证包裹。
我对 mprojector 唯一真正的问题是在 AS3 中没有任何对 SharedObjects 的支持。他们社区中的某个人解决了这个问题,并提供了他们的解决方案。它当然会利用在本地系统上存储文件。
总体而言,与 Zinc 相比,Zinc 非常复杂,编译速度慢,而且比没有文档更糟糕的是,我需要的所有文档都是完全错误的。
我几乎立即排除了Jugglor。它从来没有成功编译过任何东西。
由于这是您正在谈论的旧项目,并且是用 AS2 编写的,因此我无法谈论它的那一面。然而,我可以说像 Zinc 和 mProjector 这样的程序比 AS3 存在的时间要长得多,而且 AS3 中可用的相同钩子似乎也可以在 AS2 中使用。有可能在 AS2 中可能有更多这样的钩子,因为它被支持的时间更长,但我根本不能保证这一点。
我用过所有这些应用程序,但最喜欢的是Flajector - 一个将flash 电影(swf) 转换为exe 文件的程序。您可以在生成的应用程序中包含一个 Flash 播放器,他们将使用它。换句话说,即使没有安装 Flash Player,应用程序也可以运行。此外,Flajector 可以从 Flash 电影创建无窗口应用程序。您可以使用插件扩展您的应用程序。使用标准类,您可以处理文件等。