CoCreateInstance возвращает REGDB_E_CLASSNOTREG (Class not registered) — что делать?

программирование windows C++ Windows Mobile COM

Не понимаю я ничего в этих ваших сях и комах.
Где он должен быть зарегистрирован? Как исправлять ошибку?
Ответы:
а что за объект ты пытаешься создать? на ск-ко я помню в CoCreateInstance передается либо GUID СОМ-класса либо его ProgID. программа то для чего, для Windows mobile или нет? кусок кода в студию!!
вот строчка:
CHK( CoCreateInstance( CLSID_SampleGrabber, NULL, CLSCTX_INPROC, IID_IBaseFilter, (void**)&pH263Transform ) );
Программа для windows mobile. Код скачен вот отсюда [1]. Там в обсуждении говорится, что ещё у кого-то такая ошибка возникает, но не сказано, что с этим делать.
скачать пример немогу - регистрироваться нужно.
там в требованиях указано скачать и устновить SDK и WinCE Platform builder - установлено?
Да вроде всё стоит. В любом случае, класс CSampleGrabber (насколько я понимаю, именно с его созданием проблемы) — это класс, описанный в том коде, не системный.
CSampleGrabber  тогда должен находится в SampleGrabber файле (написано что встроено в проект). это либо исходный код который компилируется вместе с проектом, либо это отдельная библиотека (бинарный файл) который, как я понимаю, во время установки приложения на девайс должен регистрироваться на нем.
сколько проектов в солюшене? и есь и среди них проект пресловутого SampleGrabber.
если есть такой - смотри в настройках этого проекта автоматическую регистрацию COM и т.п.
Один проект, этот CSampleGrabber — почти основное, что там есть. Компилируется всё в dll.
А где надо искать «автоматическую регистрацию COM»? Сейчас поищу.
В общем, когда я руками в реестр этот guid прописал, оно заработало. Наверное, можно было бы инсталлятор какой-то сделать.
А нельзя ли, чтобы при загрузке библиотеки оно само регистрировалось?


16 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.