System.IO.FileNotFoundException - 在版本

时间:2018-02-02 09:58:43

标签: c# winforms visual-studio

我已经使用NuGet reposity下载了CefSharp扩展,我使用Microsoft Visual Studio进行了测试。
我使用了默认代码,它是:

namespace WebBrowser
{
    public partial class WebForm : Form
    {
        public WebForm()
        {
            InitializeComponent();
            InitBrowser();
        }

        public ChromiumWebBrowser browser;
        public void InitBrowser()
        {
            Cef.Initialize(new CefSettings());
            browser = new ChromiumWebBrowser("www.google.com");
            this.Controls.Add(browser);
            browser.Dock = DockStyle.Fill;
        }

        private void WebForm_Load(object sender, EventArgs e)
        {

        }
    }
}

如果我在调试中运行项目,它运行良好:它打开一个谷歌窗口。 但是如果我编译项目并使用设置安装它,我总会得到一个错误:
System.IO.FileNotFoundException:无法加载文件或程序集“CefSharp.Core.dll”或其依赖项之一。

我在Google上搜索过,我尝试在后期编译和其他方式中添加xcopy "$(SolutionDir)packages\cef.redist.x86.3.2987.1601\CEF*" "$(TargetDir)" /s /y /i,但没有任何效果。

我可以尝试什么?

2 个答案:

答案 0 :(得分:0)

好的,最后我找到了问题的原因。 CefSharp需要在根应用程序目录中有一些文件。

在安装项目中,为Application文件夹选择文件时,请选择Add => File...而不是Add => Project Output...。然后导航到您的构建文件夹并选择所有文件。这将在运行安装程序可执行文件时创建1到1份输出文件。

答案 1 :(得分:0)

我遇到了类似的问题,并通过安装以下可重新分发的文件解决了该问题:

Microsoft Visual C++ Redistributable