首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将CefSharp嵌入到Revit插件中

将CefSharp嵌入到Revit插件中
EN

Stack Overflow用户
提问于 2016-08-03 16:10:33
回答 2查看 1.2K关注 0票数 0

我遇到了一些问题,将CefSharp (WPF)嵌入到Revit的加载项中:

  1. 我的外接程序无法由Revit加载,除非所有文件都在Revit文件夹中与主exe一起。这不太好,因为它会破坏所有Revit文件。我尝试将PATH env变量设置为我的专用文件夹,但它不起作用。有什么办法让我的图书馆可以下载吗?我不是.NET大会等方面的专家。
  2. 加载项中的CEFSharp呈现网页,但它们偶尔会闪烁。有什么旗子要挂吗?
  3. 加载项中的CEFSharp拒绝呈现WebGL。有要挂的旗子吗?

注意:在Revit之外,CEFSharp工作正常(尝试过MinimalExample.WPF)

EN

回答 2

Stack Overflow用户

发布于 2016-08-03 17:30:38

对于问题的第一部分,您需要订阅AppDomain.AssemblyResolve事件并将程序指向DLL文件的位置。另一种方法是使用IExternalApplication.OnStartup命令在Assembly.Load方法中手动加载DLL。

有关AssemblyResolve事件的更多信息,请参见此处:https://msdn.microsoft.com/en-us/library/system.appdomain.assemblyresolve(v=vs.110).aspx

票数 1
EN

Stack Overflow用户

发布于 2018-01-18 20:01:43

我只是做了同样的事情,而且效果很好

我在Revit2018中有一个可停靠的following (WPF),方法是在DockableDialogs 2018.2中遵循DockableDialogs示例

在这里找到的SDK:http://usa.autodesk.com/adsk/servlet/index?siteID=123112&id=2484975)

我目前使用的是CEFSharp.Wpf版本57.0.0.0

是的,你应该像这样重新映射Cef第三方:

CefSettings settings = new CefSettings(); settings.CachePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "CefSharp\\Cache"); string rootPath = FileUtility.GetAssemblyPath(); settings.BrowserSubprocessPath = Path.Combine(rootPath, "CefSharp.BrowserSubprocess.exe"); settings.LocalesDirPath = Path.Combine(rootPath, "locales"); settings.ResourcesDirPath = Path.Combine(rootPath); Cef.EnableHighDPISupport(); //settings.CefCommandLineArgs.Add("disable-gpu", "1"); Cef.Initialize(settings, performDependencyCheck: true, browserProcessHandler: null);

不要忘记调用Cef.Shutdown();最后也要调用

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38748726

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档