Seite 1 von 1

QAxWidget vs. QAxObject

Verfasst: 11. Februar 2014 10:15
von Pixtar
Hallo an alle,

ich habe ein Problem bzw. Verständnisschwierigkeiten. QAxWidget ist von QWidget und QAxBase abgeleitet, wobei QAxBase von QAxObject und das wiederum vom QObject abgeleitet ist.

Nachfolgend zwei Quelltexte, die in meinem Verständnis die selben Methoden intern aufrufen und daher komplett gleich sein sollten:

Quelltext1 (Benutzung von QAxWidget):

Code: Alles auswählen

    QAxWidget *axWidget = new QAxWidget(this) ;
    axWidget->setControl("{922VB007-DD9A-11D3-BC8D-EAAFCB8D9378}");
    axWidget->dynamicCall("GetDeviceName(int)",0);
Quelltext2 (Benutzung von QAxObject):

Code: Alles auswählen

    QAxObject *axObject = new QAxObject(this);
    axObject->setControl("{922VB007-DD9A-11D3-BC8D-EAAFCB8D9378}");
    axObject->dynamicCall("GetDeviceName(int)",0);
Bei Quelltext1 erscheinen keine Fehler.
Bei Quelltext2 erscheint der Fehler: QAxBase: Error calling IDispatch member GetDeviceName: Unknown error

Warum funktioniert das Interface mit QAxWidget, jedoch nicht mit QAxObject?

Grüße,
Pixtar

PS: Ich will von QAxWidget loskommen, da ich eine Kamera ansteuer und nicht ständig den Output der Kamera über das Widget laufen haben will. Eigentlich benötige ich kein Kamerabild, welches angezeigt werden müsste, deshalb möchte ich gern QAxObject nutzen.