我开发了一个小型安装程序(目标:net 3.5 客户端配置文件),我有两个问题。
- 因为这是使用 .Net 3.5 Framework 完成的,而我的目标系统之一是 XP,所以我必须在运行程序之前检查是否安装了 .Net 3.5 Framework。所以,我使用 Inno-Setup 来检查并安装框架。我不确定这是否是最好的方法。我想知道是否有人会在 Inno-Setup 选择方面给我一些更好的选择。我尝试过 Windows 脚本 (*.vbs),但在我的一项测试中,在 XP 站上,这个 *.vbs 文件无法运行,因为这种类型的文件与 Wscript.exe 没有关联,所以我放弃了这个选项.
- 我的项目使用的程序集文件(dll)很少,默认情况下,当我编译项目时,它们被转储到调试/发布文件夹中。但是,我使用了其他一些我动态加载的程序集文件,并通过反射调用方法和属性。我手动硬编码了这些文件相对于我的 exe 文件的位置。因此,如果我的 exe 文件位于 CD (D:) 中,那么我的程序将查找文件夹 D:\Bin。对于 win7,它将查找 D:\Bin\Win7,对于 XP,它将查找 D:\Bin\XP 文件夹等。我的程序使用三个常见的程序集(在开头描述),我之前通过“添加引用”加载了这些程序集编译我的项目,正如我所说,VS 将它们转储到调试/发布文件夹中。我真正需要的是将这些文件放在我的 Bin 文件夹中,这样我的 setup.exe 文件将与 CD 根目录中的 config.ini 文件单独存在;干净整洁。我需要以某种方式告诉 VS 我需要我的程序集位于输出文件夹(调试/发布)内的 Bin 文件夹中。如果这是可能的,那么我可以使用 Bin 文件夹复制我的可执行文件并制作 CD,这是我的最终目标。
关于这两个问题有更好的想法吗?tnx