我正在使用 VS 2008 为 c# windows 项目创建一个安装程序。我正在尝试编写一个自定义操作,从存储在文件服务器上的 MSI 文件的源目录(例如\server\fileshare\myappinstaller\mysetting.xml)到安装我的应用程序的计算机上的目标目录(例如 C:\Program Files\My App)。
无法将设置文件添加到安装程序中,因为它将包含安装应用程序的客户独有的设置。
是否有人拥有此类自定义操作的代码(最好是 C# 或 VB.NET)?或者,有没有人知道如何在自定义操作中获取 MSI 源位置(例如\server\fileshare\myappinstaller)。
非常感谢
最佳答案
我已经通过添加
解决了这个问题/InstallerPath="[OriginalDatabase]"
到自定义操作的 CustomActionData(在设置项目的自定义操作选项卡中)并在自定义操作中使用此代码读取值:
Public Overrides Sub Commit(ByVal savedState As System.Collections.IDictionary)
MyBase.Commit(savedState)
Dim directoryOfMSI As String = IO.Path.GetDirectoryName(Context.Parameters("InstallerPath"))
'Do your work here
'...
End Sub
再见! 斯特凡
关于c# - 我需要一个从 MSI 源目录复制文件的 MSI 自定义操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/368154/