如何在动态加载的程序集的.NET WinForms应用程序中使用WebKit.NET或GeckoFX?

时间:2009-12-22 21:43:13

标签: .net assemblies webkit geckofx

我正在开发一个.NET WinForms应用程序,它在运行时从单独的程序集中加载表单和其他UI元素。这很有效。

但是,我正在加载的其中一个程序集有一个使用GeckoFX或WebKit.NET嵌入Web浏览器控件的表单。当我尝试使用Assembly.CreateInstance()加载该程序集时,我得到一个异常,说它无法找到我正在尝试加载的程序集,即使它在那里。一切都很好,一个单独的测试应用程序与正常的构建/链接适用于这些控件。

这里有什么想法吗?

谢谢,

马特

3 个答案:

答案 0 :(得分:2)

您可以尝试使用Fusion Log Viewer查找未加载的依赖项。这假定依赖项是未加载的.NET程序集。如果它是通过P / Invoke丢失的程序集,则会更复杂。

答案 1 :(得分:0)

确保所有依赖项都是可定位的,以及您尝试加载的程序集。

如果你这样做,你应该可以使用任何一个组件。

答案 2 :(得分:0)

这可能发生在两个条件

  1. 对于geckofx,您的系统中没有xulrunner,您需要在代码中添加此行 加载xulrunner - Skybound.Gecko.Xpcom.Initialize(@“xulrunner的路径”);

  2. 如果您使用的是64位计算机,则会出现异常,需要将其构建为32位版本。