我爲我的應用程序創建了一個插件。如果我沒有在我的代碼中使用GDAL庫,我的應用程序可以使用這個插件(QPlugin加載它)並且工作正常。但是,如果我使用GDAL庫中的類QPluginLoader
無法加載它並且errorstring()
方法返回../serverplugin.dll Can't find module
。QPluginLoader找不到模塊
插件DLL中有兩個輸出符號qt_plugin_instance
和qt_plugin_query_verification_data
(我發現它們是依賴於walker)。 QPluginLoader
在內部使用QLibrary
類與導出到DLL的C符號接口。如果我不使用GDAL,那麼在開始時我只有兩個導出的符號在所有插件中。當我使用GDAL時,這兩個符號被移動到一個大的導出符號列表的末尾。也許這兩個導出的符號應該在開頭。
我在做什麼錯?