WPF 应用程序在 ClickOnce 发布中使用 CEFSharp Web 浏览器时崩溃

6
我有一个简单的WPF应用程序,在调试时运行良好,但当我发布ClickOnce时,尝试加载CEFSharp Web浏览器时会崩溃。
我有一个登录页面,用户点击打开浏览器后,我会收到以下错误:
“System.Windows.Markup.XamlParseException”类型的未处理异常发生在PresentationFramework.dll中。更多信息:与指定绑定约束匹配的“MyProject.Views.CefSharpWebBrowserUserControl”类型的构造函数的调用引发了异常。

Xaml Error when creating an instance of the UserControl

> <TabItem Header="Web Page" Name="CefWebPage">
>                 <Grid Background="#FFE5E5E5" Margin="0">
>                     <Grid.ColumnDefinitions>
>                         <ColumnDefinition Width="871*"/>
>                     </Grid.ColumnDefinitions>
>                     <views:CefSharpWebBrowserUserControl x:Name="CefSharpWebBrowserUserControl"></views:CefSharpWebBrowserUserControl>
>                 </Grid>
>             </TabItem>

异常:无法创建“CefSharpWebBrowserUserControl”的实例。

TargetInvocationException:由调用目标引发了异常。

FileNotFoundException:找不到文件或程序集“CefSharp.Core,Version=45.0.0.0,Culture=neutral,PublicKeyToken=40c4b6fc221f4138”或其某个依赖项。系统找不到指定的文件。

后台代码

    public partial class CefSharpWebBrowserUserControl : UserControl
    {
        public CefSharpWebBrowserUserControl()
        {
            InitializeComponent();
            var settings = new CefSettings();
            settings.PackLoadingDisabled = true;
            WebBrowser = new ChromiumWebBrowser();
            WebBrowser.Address = "www.google.com";
            BrowserGrid.Children.Add(WebBrowser);
        }

        public ChromiumWebBrowser WebBrowser { get; set; }
    }
}
2个回答

8
默认情况下,ClickOnce 不包括 CefSharp 所需的 unamanged 资源。已经有很多讨论此问题的帖子。
以下是一些有用的链接: GitHub 项目中搜索是一个非常好的资源。 https://github.com/cefsharp/CefSharp/search?q=clickonce&type=Issues&utf8=%E2%9C%93 你还需要确保 VC++ Redist 已安装在目标计算机上。请参阅 https://github.com/cefsharp/CefSharp#version-branches 获取更多关于所需 VC++ 版本的信息。
通常,请在发布问题前尝试搜索 GitHub/StackOverflow

-4

你介意尝试在WebBrowser.Address中添加https://吗?

所以从:

WebBrowser.Address = "www.google.com";

拥有:

WebBrowser.Address = "https://www.google.com";

这个帖子也许对你有所帮助。


1
最好将其作为注释,此外,这不是他所描述的问题。从他的问题来看,似乎该项目在Visual Studio中运行良好,但通过单击一次安装后会崩溃。 - Ben Sharpe

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接