如何获取自定义操作的路径文件安装程序

本文关键字:路径 文件 安装 程序 操作 自定义 何获取 获取 | 更新日期: 2023-09-27 18:18:40

我有关于创建安装文件的问题。我有项目winform,构建解决方案后,我有2个文件setup.exe和SetupXinvitroAC。Msi包含在文件夹:

E: ' Data '程序' DotNET ' Xinvitro ' ' SetupXinvitroAC '调试代码。然后我复制文件Drivers.exe到同一文件夹。

我进入自定义操作查看器,选择自定义操作的属性。然后输入以下内容作为CustomActionData参数:

/TARGETDIR = " TARGETDIR '"

在项目我添加安装程序文件。重写OnBeforeInstall方法

protected override void OnBeforeInstall(IDictionary savedState)
{
      base.OnBeforeInstall(savedState);
      if (!System.IO.File.Exists(@"C:'Windows'twain_32'Scanner'AVA6PlusG'AVA6PlusG.ds"))
     {
       string path = Context.Parameters["TARGETDIR"];
       TextWriter tw = new StreamWriter(@"C:'text.txt");
       tw.WriteLine(path);
       tw.Close();
       Process.Start( path + "Drivers.exe");     
       //I expect it will is Process.Start(   "E:'Data'Progamming'DotNET'Xinvitro'Code'SetupXinvitroAC'Debug'Drivers.exe");           
     }
}

但是安装后,我打开text.txt文件,它打印的"C:'Program Files (x86)'catvangsolution'Xinvitro'"不像我想要的,这是我安装到的文件夹。

我想问我如何得到像"E:'Data'Progamming'DotNET'Xinvitro'Code'SetupXinvitroAC'Debug"这样的路径来运行文件驱动程序。谢谢。

如何获取自定义操作的路径文件安装程序

使用
- MSI - SourceDir属性
- EXE (InstallShield) - SETUPEXEDIR属性接收启动安装程序的路径。

我猜,SourceDir也将为引导EXEs工作(在WiX的帮助下)。