从部署项目安装目录

我正在开发一个应用程序,我将在部署项目的帮助下部署它(这将创建一个安装程序)。

在安装程序的一个步骤中,它将允许用户更改应用程序的安装文件夹。

我需要知道这个文件夹是什么,因为我需要从另一个DLL文件中保存一些文件。 如何以编程方式获取此安装文件夹?

谢谢!

看一下Installer类。 将从此类派生的新类添加到应用程序的项目中。 不要忘记应用RunInstaller属性。

在部署项目中,添加“安装和提交的自定义操作”。 对于Install custom action的CustomActionData属性,输入/Targetdir="[TARGETDIR]\"

在您在应用程序项目中创建的Installer类中,重写Install方法,在此方法中,您可以获取如下所示的安装目录:

 string targetDir = Context.Parameters[ "TargetDir" ]; 

如果您有一个非常简单的设置,当前程序集安装在主TARGETDIR中,那么您可以使用:

 String targetDir = new System.IO.FileInfo(GetType().Assembly.Location).DirectoryName;