我想编写一个应该由非 QT 应用程序加载的 DLL。结果,当我的 DLL 被加载时,我没有任何QApplication/QCoreApplication
. 结果我的信号/插槽机制不起作用。
我在 Qt 论坛中进行了深入搜索,但还没有找到关于如何处理此类问题的好答案。我创建了一个QThread
将我移动QObjects
到那个线程并创建了一个假的并在 QThread 的函数中QApplicationCore
调用它的函数。这样我的 Signal Slot 机制就起作用了,但我对这种间接解决方案不满意。我应该能够从主非 Qt 线程的执行空间激活我的线程槽。使用此类 dll 插件的正确方法是什么?欢迎直接回答和阅读资源推荐。谢谢exec()
run()
注意:加载我的 DLL 的外部应用程序是一个 Windows 应用程序。这是第三方应用程序,我无法触摸它。