WIX-引用自定义操作的安装路径

时间:2014-09-18 18:31:01

标签: c# wix windows-installer custom-action

我正在编写一个在卸载时运行的自定义操作(在c#中)。

<Custom Action='My_CA' After='InstallInitialize'>Installed AND NOT UPGRADINGPRODUCTCODE</Custom>

在我的自定义操作中,我需要使用安装文件夹中的.dll中定义的API,所以我写了这一行:

[DllImport("myAPI.dll", CallingConvention = CallingConvention.Cdecl)]

正如您所看到的,我尝试仅使用dll名称,但卸载日志显示“无法加载DLL'myAPI.dll':找不到指定的模块”。我想我需要使用相对于安装文件夹的路径而不仅仅是dll名称,但我找不到如何编写它的语法。 谁能告诉我如何从c#自定义操作引用到安装文件夹?

1 个答案:

答案 0 :(得分:0)

您尚未在CA中定义“执行”,默认值是立即意味着它在安装任何文件之前运行。您需要执行值“deferred”。

在InstallFiles操作之后,您还需要它,以便文件存在。