COM dll internals.
-
What is the difference between a COM dll and a regular dll? I would like to know how memory is managed for both the dlls. Does a regular dll get loaded into the calling application's memory space each time an application makes call to one of its functions or does it get loaded into a global heap? How is this different from a COM dll? Thanks.
--- :beer: Hakuna-Matada :beer: It means no worries for the rest of your days... It's our problem free, Philosophy :jig: "I think my response was 'What idiot dreamed this up?'" -- Mary Ann Davidson, Oracle's chief security officer, in typical blunt manner, remembering her reaction to the company's scheme to brand its databases as "unbreakable."
-
What is the difference between a COM dll and a regular dll? I would like to know how memory is managed for both the dlls. Does a regular dll get loaded into the calling application's memory space each time an application makes call to one of its functions or does it get loaded into a global heap? How is this different from a COM dll? Thanks.
--- :beer: Hakuna-Matada :beer: It means no worries for the rest of your days... It's our problem free, Philosophy :jig: "I think my response was 'What idiot dreamed this up?'" -- Mary Ann Davidson, Oracle's chief security officer, in typical blunt manner, remembering her reaction to the company's scheme to brand its databases as "unbreakable."
HakunaMatada wrote:
What is the difference between a COM dll and a regular dll
As DLL's go, there is no difference. Both types have function exports, both types are mapped into the address space of the loading process (and shared across processes). All COM DLL's have a common and specific set of function exports, whereas regular DLL's have exports specific to the DLL module.