Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ActiveQt, Ошибка при регистрации dll 
:(
    Опции темы
RobinHoodPHD
Дата 21.8.2010, 12:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 78
Регистрация: 12.8.2007
Где: Русь

Репутация: 1
Всего: 2



Доброго времени суток, Господа!

Попробовал написать внутрипроцессный сервер на Qt (ничего полезного он не делает, просто для тренеровки). Dll скомпилировалась, но зарегистрировать ее не получилось.

После компиляции пытаюсь зарегистрировать dll командой:
regsvr32 InProcServ1.dll 

На что получаю в ответ: Модуль InProcSrv1.dll загружен, но не удалось выполнить вызов DllRegisterServer. Код ошибки 0x80040200
(скриншот в приложении)
Использую Qt Creator 2.0 ОС: Windows 7
Что мне с этим сделать и как заставить все это работать?

Вот код:
InProcServ1.pro
Код

QT       += core gui
TARGET = InProcServ1
TEMPLATE = lib
SOURCES += main.cpp\
        widget.cpp
HEADERS  += widget.h
FORMS    += widget.ui
CONFIG  += qaxserver dll
RC_FILE  = qaxserver.rc
DEF_FILE = qaxserver.def

main.cpp
Код

#include <QtGui/QApplication>
#include "widget.h"
#include <QAxFactory>

QAXFACTORY_BEGIN("{F47E77CA-CD15-41af-911D-4984C239CEBA}",
                  "{7677BB40-D551-44b8-B993-AABB0D1A7BA9}")
     QAXCLASS(Widget)
QAXFACTORY_END()

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    if (!QAxFactory::isServer()) {
    Widget w;
    w.show();
    }
    return a.exec();
}

widget.h
Код

#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>

namespace Ui {
    class Widget;
}

class Widget : public QWidget
{
    Q_OBJECT
    Q_CLASSINFO("ClassID", "{CD0C73E3-B4F9-4028-B786-09C5A56B3D76}")
    Q_CLASSINFO("InterfaceID", "{A109B775-2959-4ec2-93D0-B73AA1DA9B38}")
public:
    explicit Widget(QWidget *parent = 0);
    ~Widget();

private:
    Ui::Widget *ui;
};

#endif // WIDGET_H

widget.cpp
Код

#include "widget.h"
#include "ui_widget.h"
#include <QMessageBox>
Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
    ui->setupUi(this);
    QMessageBox msg;
    msg.setText("ActiveX is created! And this is version 3.0!");
    msg.exec();
}

Widget::~Widget()
{
    delete ui;
}


Заранее благодарен за Ваши ответы!

Присоединённый файл ( Кол-во скачиваний: 6 )
Присоединённый файл  ErrorRegister.jpg 92,34 Kb
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets"
JackYF
Любитель
  • В заголовке темы в квадратных скобках обозначьте используемую вами библиотеку, например: [QT],[GTK],[wx].
  • Если вопрос актуален только для некоторой версии библиотеки, либо, если вы пользуетесь не самой последней версией, укажите это. Например: [QT4], [GTK2].
  • Все начинающие изучать Qt - не забудьте зайти сюда.
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • В вопросе укажите полную версию версию библиотеки, а также все дополнительные используемые программные пакеты.
  • Не забывайте пользоваться кнопкой "Код".
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к тематике этого раздела. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема »


 




[ Время генерации скрипта: 0.0377 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.