目前我有一个 VBScript '应用程序' 来支持发送给客户端运行,然后客户端发送回一个带有结果的 HTML 文件。从角度来看,输出本质上与Absolute Dynamics的 Syscomp.exe 相似,只是我的是单个 .vbs 文件并且没有“比较”功能。
问题:对这个支持工具的需求在不断变化,它的范围/目的越来越大——我发现太大了,VBScript 不再是正确的工具。理想情况下 - 我的新工具将具有自定义机制。例如,我不必对所有需求/要查找的内容进行硬编码,而是可以有一个配置文件,例如 App.config,或者更好的是,一个带有我自己的标记模式的 XML 文件,它可以是根据每个客户的需要作为应用程序的一部分提供。注意:我要求“不安装”,因为这会不断变化,安装程序会使其不那么灵活;我们不会在每次发送时都要求客户安装。
我想要的解决方案:我需要迁移到更通用的平台。.Net 非常理想,因为我们已经是 .Net 商店。尽管如果使用 .Net,我无法想出一个解决方案来以与我已经使用当前 VBScript(单个实体)相同的方式进行分发,那么如果提到其他通用编程框架,我将考虑它们。
我试过的:
DotNetZip,感谢 Cheeso 对这个 SO 问题的帮助:从压缩的“zip”文件运行 .Net 应用程序。我能够使用它来发布一个支持 DLL 和 App.config 的 .Net EXE,所有这些都包含在一个自解压的 ZIP 中。不幸的是,这在 Windows XP 中不起作用,除非我遗漏了什么。编辑:确认这是 Windows XP 和 Windows Vista 的限制,而不是 DotNetZip。我需要我的解决方案才能在 XP 上工作(许多客户端都有 XP 或 Windows 2003 Server 场)
7Zip - 不满足我的需求,因为在我“构建”了我的解决方案后,我无法将 .config 添加到 .7z 存档中。我可以将文件添加到在 DotNetZip 中创建的 SFX 中,只需将其重命名为“.zip”,添加新的 .config,然后删除 .zip 扩展名。
NBox将无法工作,因为任何配置文件(例如 app.config)的打包都需要成为我构建过程的一部分。我需要一个配置,我可以在任何时候在构建过程之后/之外简单地“插入”,并将其作为最终产品交付的一部分
Coffee Cup 的 Zip Wizzard在没有用户干预的情况下无法解压文件。也不允许运行 EXE 后解压
NirSoft 的 Zip 安装程序。不符合我的要求,因为它仍然会提示最终用户在哪里安装文件。
ZIP 2 安全 EXE。不幸的是,这也没有成功,尽管我不记得缺点是什么
纳尔。这不起作用,因为它需要运行安装。除此之外,它可能会奏效。
问题:
- 考虑到我的要求,这可能吗?如果是这样,我应该从哪里开始,例如上面提到的第三方,或者我错过的第三方?
- 有没有人遇到过我遇到的类似情况,但选择了除单个文件/实体应用程序以外的其他途径,并愿意分享?
要求:
- 必须是单个实体(例如 EXE 或 ZIP)
- 必须能够支持至少一个配置文件,支持 DLL 等。一个“强大”的应用程序。编辑:例如,在我的代码构建后,可以将其压缩为自解压 ZIP。任何人都可以通过 XML 配置“自定义”它,然后将 .exe 重命名为 .zip,放入他们的配置,然后一起发送。
- 必须在 XP 和转发中工作。编辑:我们假设 .Net 运行时已经安装(至少 v3.5)