如何打包CustomBootstrapperApplication.dll的依赖项?

时间:2013-11-22 09:56:50

标签: wix burn

我正在创建一个wix刻录自定义bootstapper应用程序DLL。

在允许安装完成之前,安装程序需要执行一些验证。为此,我使用第三方DLL。当我运行安装程序exe时,我收到一个错误,表明我的计算机中缺少dll。我试着打包它:

<BootstrapperApplication SourceFile="$(var.Build.Output)MyCustomBootstrapperApplication.dll">
  <Payload Id="ThirdPartyDependencyDll" SourceFile="$(var.Build.Output)ThirdPartyDependency.dll"/>
</BootstrapperApplication>

但是,这似乎不起作用。有没有办法创建自定义引导程序并使用它包装依赖的dll?

感谢。

1 个答案:

答案 0 :(得分:0)

我找到的解决方案是将dll切换为延迟链接。然后,在BootstapperApplicationCreate中,使用AddDllDirectory将临时路径添加到进程的dll搜索路径,然后在其上添加LoadLibraryEx,并指定标记以使其搜索修改后的路径。