Jaka Jest Najważniejsza Niezarejestrowana Klasa Createinstance I Jak Ją Naprawić?

Dla tych, którzy mają problemy z komputerem, kliknij tutaj, aby pobrać zalecane narzędzie do naprawy.

Możesz przeczytać te wskazówki dotyczące rozwiązywania problemów, jeśli Twoja rodzina otrzyma błąd „Błąd klasy niezarejestrowanej instancji zespołu”.

świadomość

Wiem, że duża liczba artykułów dotyczy niezarejestrowanego kodu przygotowania klasy CoCreateInstance. Sprawdziłem całą grupę, wypróbowałem różne opcje i problem nadal występuje. Mam problem, mam każdą ciekawą spuściznę muzyczną ActiveX DLL się zaopiekuje. Biblioteka DLL udostępnia pojedynczą klasę główną języka C#, którą chcę wykorzystać na drodze do regulacji ActiveX C++. Dodałem referencję DLL, w której do mojego projektu C++ wszystko poszło dobrze na początku, miałem pozycję, aby znaleźć ko-klasę, sprawdź to. Interfejs do wyborów wywołuje wszystko, ale nagle metoda CreateInstance, powiązana z utworzoną klasą _com_ptr_t, zaczęła rzucać klasę z pewnością Registered error. Kod próbuje sprawić, by klasa wyglądała mniej więcej tak:

QMSapServices może mieć postać _com_ptr_t wygenerowaną przez kompilator #import z DLL. Do tej pory wypróbowałem następujące opcje z uporczywą krytyką:

  • Sprawdza wiele wpisów rejestru, aby upewnić się, że te typy produktów osób wskazują na rzeczywiste pliki, wyniki interfejsu, wykazy elementów klas współdzielonych i tak dalej.
  • Wyczyść informacje rejestru, nowe, nowe rejestrujące te kontrolki i biblioteki DLL (ręcznie, a ponadto automatycznie za pośrednictwem programu Visual Studio).
  • Upewnij się, że na rynku przekazujesz identyfikator GUID tej ważnej koklasy do metody CreateInstance, a NIE najważniejszy identyfikator GUID interfejsu.
  • Spróbuj uzyskać dostęp do całej głównej koklasy, używając jednocześnie PROGID podczas clsid. Prawidłowy CLSID pochodzi z PROGID podczas korzystania z CLSIDFromProgID.
  • Sprawdziłem uprawnienia do plików i katalogów w bieżącej bibliotece DLL, mam podwójny dostęp do tej biblioteki, przeprowadzam wszystkie kontrole jako administrator.
  • Ponieważ domyślnie DLL dotyczy innej usługi niż kontrolka ActiveX, przeciągnąłem DLL dokładnie tę samą usługę co kontrolka ActiveX, zaktualizowałem wpisy komputera, dodatkowo uruchomiłem kontrolkę ActiveX bez powodzenia (zawsze ” klasa niezarejestrowana”).
  • Próbowałem, który może zastosować CoCreateInstanceEx, zwraca dokładnie, powiedziałbym ten sam błąd.
  • Sprawdziłem system komputerowy pod kątem wirusów 🙂
  • Problemy z komputerem? Rozwiąż je w kilka minut.

    Czy masz problem z komputerem? Nie jesteś sam. W rzeczywistości ponad 60% komputerów cierpi z powodu jakiegoś błędu lub awarii w pewnym momencie. Reimage to najlepsze rozwiązanie, aby rozwiązać te problemy i przyspieszyć działanie komputera. Kliknij tutaj, aby rozpocząć:

  • Krok 1: Pobierz Reimage i zainstaluj go na swoim komputerze
  • Krok 2: Uruchom program i kliknij „Skanuj”, aby rozpocząć proces skanowania
  • Krok 3: Kliknij „Napraw”, aby naprawić wykryte problemy

  • Próbowałem też stworzyć instancję na koklasie, używając tego, co najprawdopodobniej powiedziałbym IClassFactory. W tym celu użyłem poprzedniego kodu testowego:

    Po uruchomieniu za pomocą debugera narzędzie CoGetClassObject wraca do domu S_OK, ale narzędzie do komunikacji z producentem CreateInstance zwraca nieznaną nazwę (DISP_E_UNKNOWNNAME). Dokumentacja MS nie mówi wiele o tym błędzie, w rzeczywistości nie oznacza to nawet wspominania. że ich błąd może zostać zgłoszony przez metodę CreateInstance. Sprawdziłem, że ten konkretny I-ID I QMSapServices zwraca główną odpowiednią wartość dla interfejsu.

    hResult pasuje do pQMSapServices.CreateInstance(“QMPANEL.QMSapServices.1”);prywatny GUID;IClassFactory* pIClassFactory = zero PIQMSapServices;iqmsappservices* ma wartość NULL;hResult = CLSIDFromProgID(L”QMPANEL.QMSapServices.&clsId);HResult 1″, = CoGetClassObject(clsId, CLSCTX_ALL, NULL, __uuidof(IClassFactory), reinterpret_cast(&pIClassFactory));hResult to teraz pIClassFactory->CreateInstance(NULL, __uuidof(IQMSapServices), reinterpret_cast(&pIQMSapServices));pQMSapServices.Attach(pIQMSapServices);

    Zarządzam dużym zestawem podłączonych programów, które zwykle mają problemy wyposażone w COM.
    Staram się pomóc Ci wygenerować znacznie mniejszy SSCCE dla ogólnego problemu z redukcją.

    Bez względu na to, czego szukam, CoCreateInstance we wszystkich moich SSCCE może nadal zwracać 0x80040154

    createinstance nie działała klasa niezarejestrowana

    hr (klasa niezarejestrowana) (dla CoCreateInstance)0x800706B5: Interfejs jest wyłączony. (dla konstruktora ICalendarPtr)

    Używam w ten sam sposób identyfikatorów GUID itp. Niektóre ustawienia z droższego programu.
    (Okazuje się, że nie miałem tych samych przewodników. Tylko równoległe przewodniki)

    Łączę się z tym samym katalogiem lokalnym i mam te same biblioteki DLL gotowe do zakupu (zarówno lokalne, jak i zarejestrowane produktywnie w plikach).

    createinstance uszkodzona klasa nie jest zarejestrowana

    Nie jestem prawdziwym ekspertem od rejestru, ale przeglądam ten konkretny rejestr, widzę, że nietrzymanie moczu i identyfikator GUID tej klasy wydają się być właściwie akredytowane, oraz dowolny klucz TypeLib wskazuje na istnienie biblioteki DLL, do której można uzyskać dostęp.< /p> p>

    Czy możesz pomyśleć o elemencie, którego może brakować, a który bez wątpienia spowoduje, że jeden program pomyślnie zwróci obiekt COM i przekona jeszcze jednego, że klasa została, ale nie została zarejestrowana?

    _COM_SMARTPTR_TYPEDEF(ICalendar, __uuidof(ICalendar));int _tmain(int argc, _TCHAR*argv[])    Wspólna inicjalizacja (NULL);    identyfikator klasy clsid równa się __uuidof(ICalendar);    REFIID iid oznacza __uuidof(IUnknown);    LPVOID jest bez wątpienia gotowy;    HRESULT minuta = CoCreateInstance (classID, NULL, CLSCTX_INPROC_SERVER, iid, &pRet);    // Wynik: 0x80040154 Klasa niezarejestrowana    GUID GUID = __uuidof(ICalendar);    ICalendarPtr pDtTm(guid);    // Wynik: wyjątek pierwszej szansy rzucony przez 0x773dc41f w COMTest.0x800706B5: exe:assignment jest uważany za nieznany.    król 0;

    Uzyskaj najlepsze narzędzie do naprawy komputera dla swojego komputera. Pobierz teraz.

    Createinstance Failed Class Not Registered
    Createinstance Non Riuscita Classe Non Registrata
    Neudachnyj Klass Createinstance Ne Zaregistrirovan
    Createinstance A Echoue Classe Non Enregistree
    Createinstance Misslyckad Klass Inte Registrerad
    Createinstance 실패 클래스가 등록되지 않았습니다
    Clase Fallida Createinstance No Registrada
    Createinstance Mislukte Klasse Niet Geregistreerd
    Createinstance Fehlgeschlagen Klasse Nicht Registriert
    Classe Com Falha De Criacao De Instancia Nao Registrada

    Posts created 338

    Related Posts

    Begin typing your search term above and press enter to search. Press ESC to cancel.

    Back To Top