应用程序无法启动

时间:2010-06-13 06:29:59

标签: c#

我遇到了一个相当奇怪的问题,我在我的机器上部署了2个.NET应用程序。两者都在v2.0上运行。

现在,虽然其中一个工作顺利,但另一个甚至没有启动!此外,它不会抛出任何错误,我在事件查看器中看不到任何错误列表。

难以调试。在其他每台机器上,exe的工作都非常好!

任何已知问题?

编辑: 我遇到了一个未处理的异常,例外是这个;

  

System.Runtime.InteropServices.COMException(0x80040154):未注册的类(来自HRESULT的异常:0x80040154(REGDB_E_CLASSNOTREG))      在System.Windows.Forms.UnsafeNativeMethods.CoCreateInstance(Guid& clsid,Object punkOuter,Int32 context,Guid& iid)      在System.Windows.Forms.AxHost.CreateWithoutLicense(Guid clsid)      在System.Windows.Forms.AxHost.CreateWithLicense(字符串许可证,Guid clsid)      在System.Windows.Forms.AxHost.CreateInstanceCore(Guid clsid)      在System.Windows.Forms.AxHost.CreateInstance()      在System.Windows.Forms.AxHost.GetOcxCreate()      在System.Windows.Forms.AxHost.TransitionUpTo(Int32状态)      在System.Windows.Forms.AxHost.CreateHandle()      在System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)      在System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)      在System.Windows.Forms.AxHost.EndInit()      在BrowsingFiles.Form1.InitializeComponent()      在BrowsingFiles.Form1..ctor()      在BrowsingFiles.Program.Main(String [] args)

由于

3 个答案:

答案 0 :(得分:3)

您正在调用未在该计算机上注册的COM组件。

理想情况下,您的部署项目将注册任何COM依赖项:How To Register COM Objects in Visual Studio .NET: Steps to Register a COM Module in a Visual Studio .Net Deployment Project

答案 1 :(得分:1)

Mitch Wheat

给出的解决方案外,还有一个解决方案

复制DLL,在System32文件中的适当位置,然后使用命令提示符在系统中注册dll regsvr32 dll的位置

答案 2 :(得分:0)

你可以去项目 - >添加引用以添加您的com组件。确保在此系统上加载了com组件。您可以查看以前计算机上的引用并查看引用的位置,并相应地修改此新计算机。