Building a Proxy/Stub DLL
Completed IDL files must be compiled with the IDL compiler, MIDL.EXE. The IDL
compiler takes each IDL file and generates proxy/stub code (IDLNAME_P.C), an
interface header file (IDLNAME.H), and an interface identifier file
(IDLNAME_I.C). The header files contain both C and C++ class definitions.
By default, MIDL.EXE generates names based on your IDL file's name. However,
you can use the following command line switches to override the default:
|Command line switch
||Specifies the name of the interface header file.
||Specifies the name of the proxy source file.
||Specifies the name of the interface identifier file.
After a successful compile of the IDL file, the generated files are run
through the standard C/C++ compile and link steps. These source files implement
helper functions for marshalling and an implementation of DllGetClassObject
for the proxy/stub libraries, among other things. Note that the RPC4RT.LIB
library includes an implementation of the DllGetClassObject
function. In this provided implementation, the CLSID of the proxy/stub has to
be the same as the IID of your custom interface. If you want to use a CLSID
that differs from the IID then you must provide your own implementation of the DllGetClassObject
The following diagram shows all the pieces involved in a build of a custom
proxy/stub DLL. The IDL file, ITF.IDL, is fed into the IDL compiler. Three files
are generated: ITF_P.C, ITF.H, and ITF_I.C. These three files are compiled and
linked and the result is PROXSTUB.DLL.
- Software for developers
Software for Android Developers
- More information resources
Unix Manual Pages
- Databases for Amazon shops developers
Amazon Categories Database
Browse Nodes Database