The Microsoft Interface Definition Language (MIDL) defines interfaces between client and server programs. Microsoft includes the MIDL compiler with the Platform Software Development Kit (SDK) to enable developers to create the interface definition language (IDL) files and application configuration files (ACF) required for remote procedure call (RPC) interfaces and COM/DCOM interfaces. MIDL also supports the generation of type libraries for OLE Automation.
Where applicable
MIDL can be used in all client/server applications based on Windows operating systems. It can also be used to create client and server programs for heterogeneous network environments that include such operating systems as Unix and Apple. Microsoft supports the Open Group (formerly known as the Open Software Foundation) DCE standard for RPC interoperability.
Developer audience
When using MIDL with RPC, familiarity with C/C++ programming and the RPC paradigm is required. When using MIDL with COM, familiarity with C++ programming and the RPC paradigm as it applies to COM is required, or alternatively, familiarity with OLE Automation model scripting and type libraries is required.
Run-time requirements
The appropriate run-time libraries for using MIDL are included with Windows. The MIDL compiler and the components of the RPC development environment are installed when you install the Windows SDK. For more information, see Using the MIDL Compiler and Installing the RPC Programming Environment.
Do you need to interface with Business Central? This learning path will discuss working with web and REST services, APIs, Azure Functions, and control add-ins that can be used to interface with Business Central.
This section is a reference for the Microsoft Interface Definition Language (MIDL) and a user's guide for the MIDL compiler, which generates C-language files from IDL files.
This section provides a reference entry for each keyword in the Microsoft Interface Definition Language (MIDL). Reference entries are also included for important language productions and concepts.
The MIDL compiler can generate code for different platforms and system releases. Consult the /target switch to learn more about suggested switches and how to generate code optimized for a particular release.
When the MIDL compiler processes the input IDL and ACF files, \_\_midl is defined by default and is used for conditional compilation to attain consistency throughout the build.