2016-05-17 266 views
1

所以,我有一個C#應用程序,其中已經用XAML編寫了一個GUI。我的應用程序剛剛運行並正確顯示,但是,在對XAML中的一個GUI元素(字面上只是調整大小和移動按鈕)進行了一些小修改後,我再次構建了我的代碼,但現在嘗試運行它時,我得到和錯誤信息說:C#FileNotFoundException未被用戶代碼處理

FileNotFoundException異常是未處理的用戶代碼

錯誤是突出行:

WebKit.WebKitBrowser browser = new WebKit.Browser(); 
MainWindow.xaml.cs文件

MainWindow.xaml是GUI源文件,我重新定位了其中一個GUI元素)。

我遇到過這個錯誤,並通過轉到項目 - >添加引用,並檢查'​​WindowsFormsIntegration'的複選框來修復它...但是,我已經仔細檢查了這一點,它仍然被選中。

我都對着我的文件夾結構,並可以看到WebKit.Interop.dll文件是存在於我的調試和發佈文件夾...

我也試圖解開我的GUI所做的更改,重建,並再次運行代碼,但我得到了同樣的錯誤。

任何人有任何想法,爲什麼這是?我是否意外地點擊/按下了我不應該擁有的東西?我該如何解決這個問題?

編輯

當我點擊 '查看詳情......' 在畫面上顯示的FileNotFoundException was unhandled by user code消息時,System.IO.FileNotFoundException說:

{「無法加載文件或程序集WebKit.Interop ,版本= 533.0.0.0,Culture = neutral,PublicKeyToken = b967213f6d29a3be'或其依賴項之一。系統找不到指定的文件。「:」WebKit.Interop,Version = 533.0.0.0,Culture = neutral,PublicKeyToken = b967213f6d29a3be「 }

InnerException具有值:

FileName是:

WebKit.Interop,版本= 533.0.0.0文化=中性公鑰= b967213f6d29a3be

The FusionLog是:

===預綁定狀態信息=== LOG:DisplayName的= WebKit.Interop,版本= 533.0.0.0文化=中性公鑰= b967213f6d29a3be (完全指定的) LOG :Appbase = file:/// C:/ .../斌/調試/ LOG:初始PrivatePath = NULL

調用組件:WebKitBrowser,版本= 0.5.0.0,文化=中性公鑰= b967213f6d29a3be。

LOG:此綁定在默認加載上下文中啓動。 LOG:使用應用程序配置文件:C:\ bin \ Debug \ WpfApplication1.vshost.exe.Config LOG:使用主機配置文件: LOG:使用C:\ Windows \ Microsoft.NET \框架\ v4.0.30319 \ CONFIG \ machine.config中。 日誌:策略後引用:WebKit.Interop,版本= 533.0.0.0,Culture = neutral,PublicKeyToken = b967213f6d29a3be 日誌:試圖下載新的URL文件:/// C:/.../bin/Debug/WebKit .Interop.DLL。 日誌:試圖下載新的URL文件:/// C:/.../bin/Debug/WebKit.Interop/WebKit.Interop.DLL。 日誌:試圖下載新的URL文件:/// C:/.../bin/Debug/WebKit.Interop.EXE。 日誌:試圖下載新的URL文件:/// C:/.../bin/Debug/WebKit.Interop/WebKit.Interop.EXE。

當我看着由FusionLog指定的文件夾位置,我可以看到WpfApplication1.vshost.exe文件時,它在尋找......(有WpfApplication1.vshost應用程序清單,WpfApplication1.vshost應用,WpfApplication1.vshost.exe XML配置& WpfApplication1.vshost.exe.manifest清單的文件都在位置...(和其他幾個人:.exe.exe.manifestSource Browser Database等)

編輯

其中此異常發生的代碼只是構造爲我MainWindow.xaml.cs類,即這裏我聲明全局變量該類以上:

using Newtonsoft.Json.Linq; 
using System; 
using System.Collections.Generic; 
using System.Windows; 
using System.Windows.Controls; 
using System.Threading; 
using System.Threading.Tasks; 
using System.Diagnostics; 
using System.IO; 
using System.Text; 
using System.Xml; 
using System.Windows.Media; 
using System.Windows.Forms; 
using WebKit; 
using System.Collections; 

namespace Agent 
{ 
    public partial class MainWindow : Window 
    { 
     ... 
     System.Windows.Forms.Integration.WindowsFormsHost host = new System.Windows.Forms.Integration.WindowsFormsHost(); 
     WebKit.WebKitBrowser browser = new WebKit.WebKitBrowser(); 

     ... 
    } 
} 

異常正上線拋出:

WebKit.WebKitBrowser browser = new WebKit.WebKitBrowser(); 

,並說,它

無法加載文件或程序集WebKit.Interop版本533.0.0.0 ...

+0

爲AppDomain.Current.UnhandledException添加處理程序,併發布完整的stacktrace和InnerException(如果有的話) –

+0

不知道爲什麼,但無法編輯對Android應用程序的評論。看看這裏https://msdn.microsoft.com/en-US/library/system.appdomain.unhandledexception(v=vs.110).aspx –

+0

聽起來像一個有趣的視覺工作室 - 做一個完整的乾淨,密切的視覺工作室,並重新開放。可悲的是,在這之後,這些問題往往會得到解決。 – JamesDill

回答

0

這裏的問題是我做了'重建',而不是隻是再次構建我的代碼,編譯器已從我的生成文件夾中刪除webkit.interop.dll文件。將webkit.interop.dll手動從release build文件夾手動複製到debug build文件夾後,解決了問題。

相關問題