@MrDlop
I love C++

Как исправить ошибку uint(i) < uint(size()) при работе с QAxObject (docx file)?

Пытаюсь получить изображения из файла *.docx,
Мой код
QAxObject *wordApp = new QAxObject("Word.Application"); //открываем Word
    QString path = "D:\\Projects Qt Creator\\First_try\\abab.doc";
    QAxObject *document = wordApp->querySubObject("Documents")->querySubObject("Open(const QString&, bool, bool)",path, false, true);  //находим и открываем искомый файл в Word
    qDebug() << "read all image\n";
    QAxObject *images = document->querySubObject("InlineShapes"); // Считываем все изображения

    // Получаем изображение по индексу из объекта images
    qDebug() << images->property("Count").toInt();
    QAxObject *image = images->querySubObject("Item(int)", 1);

// ВОТ ЗДЕСЬ ПАДАЕТ
    image->dynamicCall("Select();"); // Выбираем изображение

При запуске возникает ошибка
ASSERT: "uint(i) < uint(size())" in file c:\Users\qt\work\install\include/QtCore/qstring.h, line 936

Из-за чего мог вызваться assert? И как исправить это
  • Вопрос задан
  • 97 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы