问题描述
在Windows世界中,商品的正确名称是什么。具有导出功能的老式C ++ DLL?不是COM DLL,也不是.NET DLL。我们通过调用LoadLibrary()和GetProcAddress()调用的那种DLL?
In the Windows world, what is the correct name for a good. old-fashioned C++ DLL with exported functions? Not a COM DLL, not a .NET DLL. The kind of DLL that we used to invoke by calling LoadLibrary() and GetProcAddress()?
我一直称它们为平面DLL,因为调用者无法实例化DLL中的对象,但是正确的名字是什么?
I've always called them "flat DLLs" because the caller cannot instantiate objects from the DLL, but what is the correct name?
编辑
感谢您的回答。
从技术上讲,仅 DLL可能是是正确的,但是在我工作的地方,每个人都认为 DLL表示COM,或者在.NET推送时,所以我需要一个可以准确区分我的意思的术语。
Just "DLL" may be technically correct, but where I work everyone assumes that "DLL" means COM, or maybe at a push .NET, so I need a term that distinguishes exactly what I mean.
推荐答案
本地可能是最常用的术语,尽管 windows或控制台在技术上更为正确,因为这些是可能使用的子系统(本地子系统是不同)。我还听说过使用了 C DLL,这与您使用平面DLL相同。
"Native" is probably the most common term, though "windows" or "console" are more technically correct, since these are the subsystems likely to be used (the "native" subsystem is something different). I have also heard "C DLL" used, implying the same as your use of "flat DLL".
动态链接库是一个通用概念- Windows动态链接库不同于* nix的等效库,也不同于托管库。
A dynamic link library is a generic concept - a "Windows dynamic link library" is differentiated from *nix's equivalent, and also from managed libraries.
COM在这种情况下仅是一种封装约定-Windows DLL可以包含COM服务器,便携式可执行(PE)文件也可以。
COM is little more than an encapsulation convention in this context - Windows DLLs can contain COM servers, as can portable executable (PE) files.
这篇关于非COM,非.NET DLL的正确名称?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!