summaryrefslogtreecommitdiffstats
path: root/src/activeqt/control/qaxserver.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/activeqt/control/qaxserver.cpp')
-rw-r--r--src/activeqt/control/qaxserver.cpp18
1 files changed, 10 insertions, 8 deletions
diff --git a/src/activeqt/control/qaxserver.cpp b/src/activeqt/control/qaxserver.cpp
index ee55f09..8ae62a2 100644
--- a/src/activeqt/control/qaxserver.cpp
+++ b/src/activeqt/control/qaxserver.cpp
@@ -283,10 +283,11 @@ HRESULT UpdateRegistry(BOOL bRegister)
}
if (bRegister) {
- if (qAxOutProcServer) {
- settings->setValue(QLatin1String("/AppID/") + appId + QLatin1String("/."), module);
+ settings->setValue(QLatin1String("/AppID/") + appId + QLatin1String("/."), module);
+ if (qAxOutProcServer)
settings->setValue(QLatin1String("/AppID/") + module + QLatin1String(".EXE/AppID"), appId);
- }
+ else
+ settings->setValue(QLatin1String("/AppID/") + appId + QLatin1String("/DllSurrogate"), QString());
const QStringList keys = qAxFactory()->featureList();
for (const QString &classNameIn : keys) {
@@ -328,8 +329,7 @@ HRESULT UpdateRegistry(BOOL bRegister)
key = QLatin1String("/CLSID/") + classId;
settings->setValue(key + QLatin1String("/."), className + QLatin1String(" Class"));
- if (file.endsWith(QLatin1String("exe"), Qt::CaseInsensitive))
- settings->setValue(key + QLatin1String("/AppID"), appId);
+ settings->setValue(key + QLatin1String("/AppID"), appId);
if (control)
settings->setValue(key + QLatin1String("/Control/."), QVariant(QLatin1String("")));
if (insertable)
@@ -390,10 +390,12 @@ HRESULT UpdateRegistry(BOOL bRegister)
qAxFactory()->registerClass(classNameIn, settings.data());
}
} else {
- if (qAxOutProcServer) {
- settings->remove(QLatin1String("/AppID/") + appId + QLatin1String("/."));
+ settings->remove(QLatin1String("/AppID/") + appId + QLatin1String("/."));
+ if (qAxOutProcServer)
settings->remove(QLatin1String("/AppID/") + module + QLatin1String(".EXE"));
- }
+ else
+ settings->remove(QLatin1String("/AppID/") + appId + QLatin1String("/DllSurrogate"));
+
const QStringList keys = qAxFactory()->featureList();
for (const QString &classNameIn : keys) {
const QMetaObject *mo = qAxFactory()->metaObject(classNameIn);