我有一个MFC应用程序,其GUI作为可执行代码的一部分实现(view-doc架构等) 我的应用程序使用了一些我喜欢的DLL。
现在我必须编写另一个DLL,我知道它也必须有一个GUI。
我的问题/不确定性是我应该将GUI作为主应用程序(主GUI)的一部分实现并在它们之间进行连接还是我应该将GUI作为新DLL的一部分实现,并在主GUI中创建一个入口点? 在这两种情况下,我都清楚我必须有一个接口类。
如果我将GUI作为DLL的一部分实现,我很清楚GUI应该保存一个指向接口类的指针,但接口类应该如何与GUI通信(例如,通知GUI长时间操作是完成或给出关于操作的GUI中间报告? 1)使用从Interface到GUI的指针? 2)使用带回调的消息循环? 3)其他选择???
非常感谢
答案 0 :(得分:2)
一般来说,DLL中的MFC + GUI内容非常麻烦。至少我回忆起十年前的事情。它与MFC微软风格的“支持”有关,微软想象的某些东西可能是一个问题,所以MFC区分不同类型的DLL和DLL状态等等,特别是在资源方面。
所以我会说,对于MFC,如果可行的话,将GUI内容保留在主程序中。
它还与责任分配有关。通过分离责任,您可以获得更简洁的设计,更易于维护。把事情的知识放在责任所需的地方。
干杯&第h。,