2

我有一个 Qt 主应用程序,它使用 C API 动态加载 DLL。我不能使用 Qt 插件,因为一些 DLL 是纯 C 语言。

现在我希望 DLL 可以使主 Qt 应用程序打开一个窗口,装饰它并添加 DLL 提供的 QWidget。

恐怕如果我只是将它作为 void* 推送并将其添加为 QWidget,则主应用程序将在窗口关闭时尝试释放它,这可能会导致未定义的行为。

4

1 回答 1

1

主要问题是主应用程序是动态地还是静态地链接到 Qt。如果是动态的,则解决了静态数据共享的问题(因为它将主要驻留在 DLL 中)。

没有更多细节,我只会说“试试看”,看看有什么问题。

于 2013-04-17T12:46:36.483 回答