我需要有关非技术用户的安装CD布局的建议.
我的软件部署在带有setup.exe引导程序和MSI文件的CD上.安装程序还使用了几个依赖项文件.CD root看起来像这样:
myapp.msi setup.exe sqlexpr32.exe dotnetfx.exe myapp.ico ...
对于开发人员而言,猜测您需要运行的文件才能开始安装,这不是火箭科学setup.exe
.
但我的用户绝对不是技术娴熟的.
我已经包含了一个autorun.inf
文件,但是我在几台机器上测试后发现它们中的大多数都没有自动启动设置.无论出于何种原因 在某些机器中,有人禁用了自动运行,或某些防病毒软件,或其他什么.问题是我不能总是依赖自动运行.
所以我正在考虑更改CD布局,以便更明显地运行哪个文件.
一个选项是创建一个新Install.exe
程序,只启动原始引导程序,并将所有内容移动到CD根目录中的文件夹:
autorun.inf <-- launches Install.exe, if autorun is enabled for the drive. Install.exe <-- launches contents/setup.exe contents/myapp.msi contents/setup.exe contents/sqlexpr32.exe contents/dotnetfx.exe contents/myapp.ico contents/...
由于我还不能依赖.net框架,我不能使用.net来制作我的Install.exe,这有点烦人.
其他选项是制作一个,Install.bat
但大多数用户不熟悉.bat扩展名,可能不会考虑双击它.并且用户将看到命令提示符窗口.
其他选项是制作一个自解压exe并压缩内部的所有内容,因此CD中唯一的文件是autorun.inf和自解压文件.
你会怎么做?
其他选项是生成Install.bat,但大多数用户不熟悉.bat扩展名,可能不会考虑双击它.并且用户将看到命令提示符窗口.
您可以创建Install.bat的快捷方式,并为其提供一个漂亮的图标和一个更好的名称.您也可以将其初始化为最小化,因此他们可能不会注意到命令提示符短暂出现.
编辑:(由塞尔吉奥阿科斯塔)
我发现了如何解决相对路径问题:
这是应该配置快捷方式的方式:
Target: %windir%\system32\cmd.exe "/C start contents\setup.exe" Start in: %cd% Run: Minimized Icon: %SystemRoot%\system32\SHELL32.dll (and manually select the one that looks like a setup package.
我测试了它,它的工作原理.