在 Windows 世界中,什么是好的名称的正确名称。带有导出函数的老式 C++ DLL?不是 COM DLL,也不是 .NET DLL。我们过去常常通过调用 LoadLibrary() 和 GetProcAddress() 来调用的那种 DLL?

我一直称它们为“平面 DLL”,因为调用者无法从 DLL 中实例化对象,但正确的名称是什么?

编辑

感谢您的回答。

只是“DLL”在技术上可能是正确的,但在我工作的地方,每个人都假设“DLL”是指 COM,或者可能是 .NET,所以我需要一个术语来准确区分我的意思。

最佳答案

“本地”可能是最常用的术语,尽管“窗口”或“控制台”在技术上更正确,因为这些是可能使用的子系统(“本地”子系统有所不同)。我也听说过使用“C DLL”,暗示与您使用“平面 DLL”相同。

动态链接库是一个通用概念——“Windows 动态链接库”与 *nix 的等价物以及托管库不同。

在这种情况下,COM 只不过是一种封装约定 - Windows DLL 可以包含 COM 服务器,就像可移植的可执行 (PE) 文件一样。

关于.net - 非 COM、非 .NET DLL 的正确名称?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/564079/

10-13 03:11