Почему я получаю сообщение «Класс REGDBE_ECLASSNOTREG не зарегистрирован» при попытке создать экземпляр COMC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Почему я получаю сообщение «Класс REGDBE_ECLASSNOTREG не зарегистрирован» при попытке создать экземпляр COM

Сообщение Anonymous »


Цель здесь — просто вызвать метод в COM-приложении из небольшого консольного приложения C++. Пытаюсь понять, как COM работает с клиентскими приложениями.

Приложение COM называется «ShoreWare».
Компонент COM называется «ShoreBusDS.Licenses.1».
COM-интерфейс называется «ILicenses».
COM-метод, который я пытаюсь вызвать, — это «GetLicenseCapacity» (он принимает один параметр, чтобы определить, для какого «типа» лицензии вы пытаетесь получить информацию о емкости).

Вот мой код:

#include #include #import "Debug/ShoreBusDS.dll"name_guids используя пространство имен SHOREBUSDSLib; интервал основной() { // Инициализируем COM CoInitialize(nullptr); // Создаем экземпляр COM-объекта ILicensesPtr pLicenses; HRESULT hr = CoCreateInstance(__uuidof(Licenses), nullptr, CLSCTX_INPROC_SERVER, __uuidof(ILicenses), (void**)&pLicenses); если (FAILED(hr)) { std::cerr
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»