【发布时间】:2015-06-17 09:26:29
【问题描述】:
我目前正在评估移植现有非托管 C++ 代码库以使用新 GUI 工具包的选项。 QT 和 wxWidgets 看起来都很合适,因为它们具有强大的对象模型。该应用程序仅针对 Windows 机器,但最好有一个独立于平台的解决方案。
将来可能需要将此代码转换为仅限于单线程单元 (STA) 的 DLL。对于这些工具包中的任何一个来说,这是一个无法避免的问题吗?还有其他我应该考虑的工具包吗?
我知道 DLL 将由充当多线程单元 (MTA) 的应用程序加载。不幸的是,这个应用程序还可能加载其他可能有自己的 GUI 的 DLL,这些 DLL 可能正在使用不受我控制的其他或类似的工具包。这些工具包是否更适合这些限制?我从其他帖子中了解到starting a QT GUI from a DLL 是可能的,但不是很灵活。但是,我不知道 wxWidgets 是否也是如此,或者 STA 限制是否对任何一个工具包都有影响。
【问题讨论】: