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
| Description
|
-header
| Specifies the name of the interface header file.
|
-proxy
| Specifies the name of the proxy source file.
|
-iid
| 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 function.
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
-
Delphi Components
.Net Components
Software for Android Developers
- More information resources
-
MegaDetailed.Net
Unix Manual Pages
Delphi Examples
- Databases for Amazon shops developers
-
Amazon Categories Database
Browse Nodes Database