跟踪System.IO.FileLoadException

时间:2011-03-24 14:10:15

标签: c# .net

偶尔我遇到依赖非托管.dll抛出异常的应用程序的问题:

System.IO.FileLoadException:无法加载文件或程序集'AssemblyXXXX,Version = 1.0.4099.27218,Culture = neutral,PublicKeyToken = null'或其依赖项之一。此应用程序无法启动,因为应用程序配置不正确。重新安装应用程序可能会解决此问题。 (HRESULT异常:0x800736B1) 文件名:'AssemblyXXXX,Version = 1.0.4099.27218,Culture = neutral,PublicKeyToken = null'---> System.Runtime.InteropServices.COMException(0x800736B1):此应用程序无法启动,因为应用程序配置不正确。重新安装应用程序可能会解决此问题。 (HRESULT异常:0x800736B1)

主要问题是,它没有说明无法加载哪个DLL,或者没有注册哪个COM对象。

是否有任何工具可以帮助追踪此问题?

1 个答案:

答案 0 :(得分:3)

Fuslogvw显示了程序集加载错误的详细信息。但是,我猜它是一个COM 问题。

尝试使用Type.GetTypeFromProgIDActivator.CreateInstance动态加载每个COM依赖项(可能在不同的程序中,也可能使用它们的progid),并单独捕获每个错误。

过去,当用户的计算机上安装了不同(较旧)的Office版本时,我看到了这个错误。