有时,我会遇到依赖非托管.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对象未注册。
有什么工具可以帮助追踪这个问题吗?
发布于 2011-03-24 22:14:09
Fuslogvw显示程序集加载错误的详细信息。然而,我猜这是一个COM问题。
尝试使用Type.GetTypeFromProgID和Activator.CreateInstance动态加载每个COM依赖项(可能在不同的程序中,也可能使用它们的progid),并分别捕获每个错误。
在过去,当用户的计算机上安装了不同(较旧)版本的Office时,我就会看到此错误。
https://stackoverflow.com/questions/5420450
复制相似问题