我正在尝试部署一个应用程序,该应用程序使用在C#中嵌入带AxHost的ActiveX控件的库。
当我在我们的测试台上运行已安装的应用程序时,我会捕获并呈现以下异常:
Unexpected exception.
This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem. (Exception from HRESULT: 0x800736B1)
at System.Windows.Forms.UnsafeNativeMethods.CoCreateInstance(Guid& clsid, Object punkOuter, Int32 context, Guid& iid)
at System.Windows.Forms.AxHost.CreateWithoutLicense(Guid clsid)
at System.Windows.Forms.AxHost.CreateWithLicense(String license, Guid clsid)
at System.Windows.Forms.AxHost.CreateInstanceCore(Guid clsid)
at System.Windows.Forms.AxHost.CreateInstance()
at System.Windows.Forms.AxHost.GetOcxCreate()
at System.Windows.Forms.AxHost.TransitionUpTo(Int32 state)
at System.Windows.Forms.AxHost.CreateHandle()
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.AxHost.EndInit()
at ....InitializeComponent()
at ...
我用Google搜索了0x800736B1,所以我知道这意味着无法加载文件。
现在最重要的是如何找出哪个文件无法加载。
我可以打开某种日志记录功能吗,或者可能有一些方法可以从异常中获取更多信息?
答案 0 :(得分:0)
除非是您的ActiveX代码,否则这将很难或不可能。我建议使用像ProcessMonitor这样的工具来查找哪个文件句柄失败。如果您有代码,则可以在调试模式下运行它,或者改进它的日志记录。
当然你总是可以尝试
重新安装应用程序可能会修复 这个问题