在winform安装包中,路径一般情况下是用户自己通过图形界面去选择的,然后将这个路径存到注册表中,以供下次我们更新这个系统的时候用,但是有没有一种情况是安装包的路径是通过代码来控制的呢?
有的,这几天因为项目需要写一个更新包,但是这个更新包的机制是每次更新的时候其实是重新安装了一次,这样的话在更新的过程中路径就不能让用户来选了,而是要通过注册表来获取并且代码绑定,但是我发现就算我们取得了安装路径,那么代码绑定应该在哪里写呢,由于在安装类中,当安装包执行到其中的方法时,安装的路径已经确定了(由安装包来确定),所以在安装类中更改安装的路径是不行的,我也试了下,总是报错。
那么有一种方法就是在运行这个安装包(msi)的时候,我们给这个安装包路径加上一个参数,假设安装包的路径是:D:/项目安装包文件/HzbSystem.msi;我们希望这个安装包最后的安装到的目标路径是:D:/项目/HzbSystem/,那么我们可以在命令行中输入如图1所示:
图1