当我在其中执行某些操作时,我正在处理崩溃的Windows应用程序并给出了以下错误:
System.IO.FileNotFoundException:无法加载文件或程序集 ' Microsoft.Practices.EnterpriseLibrary.Data,Version = 6.0.0.0, Culture = neutral,PublicKeyToken = 31bf3856ad364e35'或其中一个 依赖。该系统找不到指定的文件。文件名: ' Microsoft.Practices.EnterpriseLibrary.Data,Version = 6.0.0.0, Culture = neutral,PublicKeyToken = 31bf3856ad364e35'在 OpsV3_DAL.OpsV3DB.GetCreditRemittanceOrder(Int32 orderID)at at OPSv3.FormProcessCreditCards.ChecksNew()in C:\ Users \ janets \ Downloads \ AmericaFirst_Release1 \ Contact Manager Lite \ Contact Manager Lite \ FormProcessCreditCards.vb:845行 OPSv3.FormProcessCreditCards.TBPrintChecks_ButtonClick(对象发送者, ToolBarButtonClickEventArgs e)in C:\ Users \ janets \ Downloads \ AmericaFirst_Release1 \ Contact Manager Lite \ Contact Manager Lite \ FormProcessCreditCards.vb:第799行 System.Windows.Forms.ToolBar.WmReflectCommand(Message& m)at System.Windows.Forms.ToolBar.WndProc(Message& m)at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd,Int32 msg, IntPtr wparam,IntPtr lparam)
我之前在visual studio中编译了应用程序并且工作正常。 然后突然一些功能开始给我这个错误。 有谁知道我为什么会收到这个错误? 这不是我写的应用程序。我接管了他们用.NET编写的应用程序,但我无法访问开发人员。
答案 0 :(得分:0)
缺少一个DLL。它可能是Microsoft.Practices.EnterpriseLibrary.Data.dll
,但它也可能是其他东西(称为"或其中一个依赖项")。如果您从Debug构建切换到Release构建或其他各种原因,可能会发生这种情况。
对于根本原因分析,我建议如下:
获取Process Monitor并记录所有文件活动。为您的应用程序设置过滤器。重现问题后,将日志另存为XML文件。
然后获取我的工具ProcMon Analyzer(注意:我是其作者)并打开XML文件。它将分析它并给出一个未找到的DLL列表。
您也可以手动执行此操作,但请注意,最初可能找不到某些DLL,但稍后在查看%PATH%
环境变量,GAC或类似内容时会发现这些DLL。该工具将删除所有首先PATH NOT FOUND
但SUCCESS
稍后{。}}的条目。