【发布时间】:2011-03-29 16:10:14
【问题描述】:
对于跨平台开发,我不确定需要什么才能使 Delphi 代码跨平台使用 PostMessage 和 SendMessage 调用进行进程内和进程间通信,因为关于 Delphi 的新运行时库的信息很少。
网上有相当多的 Delphi 代码示例使用 Windows 消息队列进行编程任务(例如在线程通信领域),这可能对跨平台开发人员毫无用处。
没有模拟层将旧的特定于操作的消息发送代码映射到跨平台解决方案的可能性有多大?应用程序开发人员现在是否应该通过更适合跨平台操作的新消息实现来审查现有代码?
【问题讨论】:
-
说实话,如果没有 Windows API,我完全不知道如何编写非平凡的应用程序。 Windows 消息处理系统只是 API 的一部分。今天的 VCL 和 RTL 中的“一切”都基于 Windows API,因此甚至很难推测跨平台的 VCL/RTL 应该如何工作。
-
@Andreas RTL 和 VCL 在很大程度上隐藏了 Windows 内部,这可以为跨平台打下坚实的基础(不确定我是否可以在这里提到 Lazarus 作为一个很好的例子)
-
这是任何人的猜测。我的猜测是在不同的平台上会有不同的框架。我敢打赌,SendMessage 和 PostMessage 在非 Windows Delphi 上不存在。如果你想写跨平台,那就选择 Qt、wxWidgets 等。
-
不应该太难以推测,@Andreas。我们已经看过两次了。 CLX 是如何工作的?拼箱如何运作?
-
“CLX 是如何工作的?”不太好。
标签: delphi winapi cross-platform