Plugin cannot be loaded for module
I created a QML Extension Plugin containing a QWidget (containing the interface down to the hardware API) through a QGraphicsProxyWidget.
QML file looks like:
@import QtQuick 1.0
import "ImagerPlugin" 1.0
Module is located at
qmlImagerPlugin.cpp: (Containing the plugin relevant code)
class imagerWgtProxy : public QGraphicsProxyWidget
explicit imagerWgtProxy(QGraphicsItem *parent = 0)
imager = new WgtImager();
class imagerPlugin : public QDeclarativeExtensionPlugin
void registerTypes(const char *uri)
qmlRegisterType<imagerWgtProxy>(uri, 1, 0, "ImagerWgt");
Here comes the output of the SerialConsole of my WindowsMobile 6.5 Prof Emulator:
@CertVerify: Storage CardTestImagerqmlView.exe trust = 2
CertVerify: QtDeclaratived4.dll trust = 2
CertVerify: QtScriptd4.dll trust = 2
CertVerify: QtCored4.dll trust = 2
CertVerify: msvcr90d.dll trust = 2
CertVerify: QtSqld4.dll trust = 2
CertVerify: QtGuid4.dll trust = 2
CertVerify: QtNetworkd4.dll trust = 2
CertVerify: Storage CardTestImagerimagerPluginqmlimagerplugin.dll trust = 2
file:///Storage Card/TestImager/test.qml:2:1: plugin cannot be loaded for module
"imagerPlugin": Cannot load library /Storage Card/TestImager/imagerPlugin/qmlim
agerplugin.dll: The specified module could not be found.
import "imagerPlugin" 1.0
QmlView.exe is just a simple QDeclarativeView
int main(int argc, char *argv)
QApplication app(argc, argv);
Maybe it's just a wrong naming convention I'm not getting or something...
Any help would be appreciated ;)
The error message looks like it is looking for a lowercase "imagerPlugin" (and path), while the code pasted above is using uppercase "ImagerPlugin". Can you verify if they are being used consistently in the code/directory naming?
Thanks for the answer :)
Was thinking about that as well... so I already tried around a bit (setting everything lowercase, etc.)
Until now this didn't get me to a loaded module
So... I tried putting the qmldir file into the same directory as the loaded qml-File
So I was thinking the folder structure has to look like this:
_ qml-Files (importing "ModuleDirectory")
_ qmldir (defining modules in actual directory)
Now I changed to:
_ qml-Files (imports)
_ qmldir (defining module in module-directory)
With the new structure the module dll seems to be loaded, but my ImagerWgt isn't recognized
@ImagerWgt is not a type@
Can anyone describe the correct folder structure?
I was thinking, that both ways are possible - first one would've made more sense in my case...
Well, I think, I made a step forward
I changed the plugin name from imagerPlugin to QImagerPlugin
Strangely this seems to make a difference (??)
But maybe recompile + trial'n'error also play a role ;)
At the moment the win mobile emulator isn't complaining, but I don't get down to to the hardware yet
I'll change the plugin from being a qwidget to wich the camera video is streamed directly to something like a qmovie, wich accesses a QIOBlockDevice or something...
Thanks for the moment :)