是否可以拥有一个文件exe.settings,其值将适应msi的安装文件夹?

时间:2012-08-14 16:48:45

标签: .net windows-installer settings

所以,我有一个在vs2010下构建的应用程序,该应用程序在文件.exe.config中定义了sone值。其中一些值是路径,路径可能会有所不同,因为它取决于用户在运行msi时选择的安装文件夹。

有没有办法在配置文件中定义一个可以被实际安装文件夹替换的字符串?

我需要的是配置文件中的内容如下:

    <setting name="path" serializeAs="String">
       <value>[installationFolder]\Germaine\RapportsBrut\</value>
    </setting>

这样,我将有一个有效的默认位置,但是用户可以在不破坏应用程序的情况下进行更改。

感谢。

1 个答案:

答案 0 :(得分:1)

当然,请在配置文件中使用相对路径。

而不是像

这样的条目
  

C:\ MyHardCodedInstallPath \数据\ file1.csv

在您的设置文件中有相对路径

  

数据\ file1.csv

在您的代码中,使用Path.Combine将该安装路径与相对路径组合。

string fullPath = Path.Combine(InstallationPath, relativePathFromSettings);