Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Language: C++
Expertise: All
Oct 27, 2000

Registering Custom Interfaces


When the object exposes the custom interfaces via standard marshalling, the proxy\stub DLL is required for marshalling data across the thread\processes\computer boundaries.

The interfaces are specified in an IDL file that could be created manually or, by example by through MS VC++ ATL COM AppWizard. The MIDL compiler processes the IDL file and generates the number of files including the dlldata.c and Project_p.c files. By compiling these files with the defined REGISTER_PROXY_DLL compiler switch, the default registration code is added to the proxy\stub DLL. The HKLM\Software\Classes\Intrface\IID\ProxyStubCLSID32 subkey, plus the value of the CLSID for the default name for each interface will be added during the registration of this DLL. The default registration code uses the GUID of the first interface encountered in the IDL file as the default CLSID.

Use of the default CLSID is not always convenient, especially when new interfaces are added during the development of the DLL and the DLL is registering in the end of each its build.

You can use the PROXY_CLSID_IS=<explicit value of GUID> compiler switch to specify your own CLSID. To obtain the GUID, run the GuidGen.exe utility and select Option3.
Boris Eligulashvili
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap