我在DLL文件中遇到问题需要调试。我没有DLL文件的原始源代码。我使用反射器来反编译DLL并将其创建为项目。我将它添加到我的解决方案,然后删除我的主项目中的原始DLL引用,并将其替换为DLL项目的引用。我希望我可以在Visual Studio上本地运行它,并在反编译的DLL项目中设置断点。但是,我收到错误:
无法加载文件或程序集' AlphaSubRoutines,Version = 1.0.0.10,Culture = neutral,PublicKeyToken = f9f2cc99cd30dc52'或其中一个依赖项。定位的程序集的清单定义与程序集引用不匹配。 (来自HRESULT的异常:0x80131040)。
我已经看过有关如何使用DLL文件处理此问题的其他帖子,但我在我的项目中将DLL作为单独的解决方案处理,我不知道该怎么做。不确定是否重要,但这是通过Visual Studio在我的本地IIS服务器上运行的,并且在.NET 2.0上。这是加载跟踪:
异常详细信息:System.IO.FileLoadException:无法加载文件或程序集' AlphaSubRoutines,Version = 1.0.0.10,Culture = neutral,PublicKeyToken = f9f2cc99cd30dc52'或其中一个依赖项。定位的程序集的清单定义与程序集引用不匹配。 (HRESULT异常:0x80131040)
来源错误:
Line 128: this._MenuItems.Clear();
Line 129: else
Line 130: this._MenuItems.Add((object) menuItem);
Line 131: }
Line 132: }
源文件:C:\ Users \ eric.Last_Name \ Desktop \ ZuluControls \ Menus \ LeftMenuControl \ LeftMenuControl.cs Line:130
装配加载跟踪:以下信息有助于确定装配' AlphaSubRoutines,Version = 1.0.0.10,Culture = neutral,PublicKeyToken = f9f2cc99cd30dc52'无法加载。
装配管理器从以下位置加载:C:\ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ mscorwks.dll 在可执行文件C:\ Program Files(x86)\ IIS Express \ iisexpress.exe下运行 ---详细的错误日志如下。
===预绑定状态信息=== 日志:用户= LISC-IT \ Eric.Last_Name 日志:DisplayName = AlphaSubRoutines,Version = 1.0.0.10,Culture = neutral,PublicKeyToken = f9f2cc99cd30dc52 (完全指定的) 日志:Appbase = file:/// C:/Users/eric.Last_Name/Desktop/IISSERVER/ 日志:初始PrivatePath = C:\ Users \ eric.Last_Name \ Desktop \ IISSERVER \ bin
日志:此绑定在默认加载上下文中启动。
日志:使用应用程序配置文件:C:\ Users \ eric.Last_Name \ Desktop \ IISSERVER \ web.config
日志:使用主机配置文件:C:\ Users \ eric.Last_Name \ Documents \ IISExpress \ config \ aspnet.config
日志:使用C:\ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ config \ machine.config中的计算机配置文件。
日志:政策后参考:AlphaSubRoutines,Version = 1.0.0.10,Culture = neutral,PublicKeyToken = f9f2cc99cd30dc52
日志:尝试下载新的URL文件:/// C:/Windows/Microsoft.NET/Framework/v2.0.50727/Temporary ASP.NET Files / root / 2bb6b3ce / 3abdb25d / AlphaSubRoutines.DLL。
日志:尝试下载新的URL文件:/// C:/Windows/Microsoft.NET/Framework/v2.0.50727/Temporary ASP.NET Files / root / 2bb6b3ce / 3abdb25d / AlphaSubRoutines / AlphaSubRoutines.DLL。
日志:尝试下载新的URL文件:/// C:/Users/eric.Last_Name/Desktop/IISSERVER/bin/AlphaSubRoutines.DLL。
警告:比较程序集名称导致不匹配:主要版本
错误:无法完成装配设置(hr = 0x80131040)。探测终止。
Decompiled DLL AlphaSubRoutines正在从另一个名为ZuluControls的DLL中调用。我也没有ZuluControls DLL的源代码。我对这些事情知之甚少,但看起来ZuluControls DLL对AlphaSubRoutines DLL有一个特定的引用(版本,公钥等)。 ZuluControls引用错误的AlphaSubRoutines DLL或AlphaSubRoutine DLL项目具有错误的标识信息。
这是来自反编译DLL项目的AssemblyInfo.cs:
// Assembly AlphaSubRoutines,Version 1.0.0.10
[assembly:System.Reflection.AssemblyCopyright("")] [assembly:System.Reflection.AssemblyTitle(" Alpha Subroutines")] [assembly:System.Reflection.AssemblyDescription("为Alpha应用程序创建的子程序")]
[assembly:System.Reflection.AssemblyConfiguration("")]
[assembly:System.Reflection.AssemblyCompany(" Alpha Industries,Inc。")]
[assembly:System.Reflection.AssemblyProduct("")]
// [assembly:System.Reflection.AssemblyKeyFile(@" .... \ AlphaSubRoutines.snk")]
[assembly:System.Reflection.AssemblyTrademark("")]
// [assembly:System.Reflection.AssemblyDelaySign(false)]
[组件:System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute.DebuggingModes.DisableOptimizations | System.Diagnostics.DebuggableAttribute.DebuggingModes.EnableEditAndContinue | System.Diagnostics.DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | System.Diagnostics.DebuggableAttribute.DebuggingModes。默认)]
[组件:System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows =真)]
// [assembly:System.Reflection.AssemblyKeyName(" AlphaSubRoutines")]
[assembly:System.Runtime.CompilerServices.CompilationRelaxations(8)]
我必须注释掉三行才能使其无误地构建,这可能是问题的一部分吗?任何帮助将不胜感激!!