Qt5.2.0 で ActiveX サーバーを作成しようとしています。私が持っているいくつかの情報によると、単純な ActiveX サーバー (1 つのオブジェクトをエクスポートする) を作成するには、次のようにすれば十分です。
そのような.proファイルを持っています
TEMPLATE = lib CONFIG += dll axserver TARGET = simpleServer greaterThan(QT_MAJOR_VERSION, 4): QT += widgets QT += core RC_FILE = qaxserver.rc DEF_FILE = qaxserver.def HEADERS += myserver.h SOURCES += main.cpp SOURCES += myserver.cpp
そのようなmain.cppファイルがあります
#include "ActiveQt/QAxFactory"
#include "myserver.h"
QAXFACTORY_DEFAULT( MyServer, 5 つの ID )
クラスは継承する必要が
QWidget
あり、QAxBindable
ファイルがあるはずです
qaxserver.rc
。私の場合、その内容は1 TYPELIB "simpleServer.pro"
qaxserver.def
デフォルトの内容のファイルがあるはずです:; mfc_test.def : Declares the module parameters. EXPORTS DllCanUnloadNow PRIVATE DllGetClassObject PRIVATE DllRegisterServer PRIVATE DllUnregisterServer PRIVATE DumpIDL PRIVATE
問題は、これら 5 つの名前が Visual Studio のリンカーに対して未定義であることです。問題を解決するには?
エラーは次のとおりです。
error LNK2001: unresolved external symbol DllCanUnloadNow