Ошибка Qt ActiveX CoCreateInstance (класс не зарегистрирован) Adobe Reader

У меня есть следующий код из того, что я прочитал на QT Wiki:

auto pdfObject = new QAxObject("AxAcroPDFLib.AxAcroPDF");
qDebug() << pdfObject->dynamicCall("LoadFile(const QString)", "test.pdf");
qDebug() << pdfObject->dynamicCall("Print()");

Но когда я запускаю его, я получаю сообщение:

CoCreateInstance failure (Class not registered)
QAxBase::setControl: requested control AxAcroPDFLib.AxAcroPDF could not be instantiated

Я искал dll требуется AcroPDF.dll и нашел в C:\Program Files (x86)\Common Files\Adobe\Acrobat\ActiveX и установить Adobe Acrobat Reader DC. Что я могу сделать, чтобы это работало?

0

Решение

Скорее всего, COM-объект не найден из-за отсутствия регистрации. Убедитесь, что ActiveX DLL зарегистрирована. использование regsvr32. Вам могут понадобиться права администратора для его запуска. Командная строка:

regsvr32 AcroPDF.dll
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]