WIX安装后Xaml控件无法正常工作

时间:2013-09-06 05:14:55

标签: c# xaml wix awesomium pdfviewer

我的XAML应用中有两个控件。一个是Awesomium,另一个是PDF查看器AxAcroPDFLib.AxAcroPDF当我从Visual Studio本地运行应用程序时,当Awesomium遇到pdf链接时,它会将请求重新路由到pdf查看器,一切都是很荣幸的海鲂。

问题是,一旦我尝试通过WIX安装程序交易创建独立产品,重新路由的请求似乎由我本地安装的Acrobat Reader而不是AxAcroPDFLib处理(PDF查看器在我的XAML应用程序。)

我认为它可能与两个dll(Interop.AcroPDFLib.dllAxInterop.AcroPDFLib.dll)有关,因为读者没有注册,所以我使用heat.exe来创建适当的dll注册,但是这根本没有改变任何东西(在安装过程中没有抛出任何错误,PDF查看器仍在我的应用程序之外运行。)我甚至尝试在两个文件上使用“禁用”SelfRegCost = "1"并且无法安装,说它无法注册DLL。在这一点上,我有点迷失了我应该做的事情。非常感谢任何帮助。

更新:我尝试使用VS发布应用,跳过所有WIX内容,应用按预期工作。我现在确定它与我的WIX xml有关...

1 个答案:

答案 0 :(得分:0)

最后问题是我没有复制所有必要的文件以使其工作......我认为我对其中的一些文件过多了,但这里是我需要的文件列表最终工作(我停止尝试使用加热或其他方式注册任何DLL):

AcroPDF.dll
avcodec-53.dll
avformat-53.dll
avutil-51.dll
Awesomium.Core.dll
Awesomium.Core.xml
Awesomium.dll
Awesomium.Windows.Controls.dll
Awesomium.Windows.Controls.xml
Awesomium.Windows.Forms.dll
Awesomium.Windows.Forms.xml
awesomium_process
AxInterop.AcroPDFLib.dll
MyApp.exe
MyApp.exe.config
MyApp.exe.manifest
icudt.dll
Interop.AcroPDFLib.dll
libEGL.dll
libEGLv2.dll
xinput9_1_0.dll

我在单独的en-US.dll文件夹

中也有locales