2010-06-13 2 views
4

У меня возникла довольно странная проблема, я развернул на моей машине 2 приложения .NET. Оба запускаются на версии 2.0.Приложение не запускается

Теперь, когда один из них работает плавно, другой даже не запускается! Более того, он не вызывает никаких ошибок, я не вижу никаких списков ошибок в средстве просмотра событий.

Становится трудно отлаживаться. На любой другой машине, работа exe отлично!

Любые известные проблемы?

EDIT: Я поймал необработанное исключение, и это исключение;

System.Runtime.InteropServices.COMException (0x80040154): Класс не зарегистрирован (Исключение из HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)) на System.Windows.Forms.UnsafeNativeMethods.CoCreateInstance (Guid & CLSID, объект punkOuter, Int32 контекст, Guid & н.о.р.) на System.Windows.Forms.AxHost.CreateWithoutLicense (Guid CLSID) в System.Windows.Forms.AxHost.CreateWithLicense (лицензии String, Guid CLSID) в System.Windows.Forms.AxHost.CreateInstanceCore (Guid clsid) в System.Windows.Forms.AxHost.CreateInstance() в System.Windows.Forms.AxHost.GetOcxCreate() в System.Windows.Forms.AxHost.Transit ionUpTo (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 [] арг)

Благодарности

+0

Правильно, я использую объект AxShowkwave Flash, который является COM. Проблема в том, что на любой другой машине он регистрируется должным образом. Только на нескольких машинах создается ошибка! Как мне теперь регистрировать COM? Спасибо за помощь! – Jayesh

ответ

1

еще одно решение, кроме того, дается Mitch Wheat

Скопируйте DLL, в файле System32 на это правильное место, а затем с помощью команды оперативно зарегистрировать DLL с системой с помощью regsvr32 место-оф -dll

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

+0

Привет, это звучит аккуратно, но я создаю пользовательский установщик! Любая помощь с этим уважением действительно сработает для меня! Спасибо – Jayesh

0

Вы можете перейти по проекту -> добавить ссылку добавить COM-компонент. Убедитесь, что в этой системе загружен компонент com. Вы можете просмотреть и просмотреть ссылки на предыдущей машине и посмотреть, где находятся ссылки, и соответствующим образом изменить эту новую машину.

Смежные вопросы