Using C/C++-Preprocessor with MIDL

The MIDL compiler does not preprocess source files. Rather, the MIDL compiler uses an available preprocessor to prepare the input stream for parsing. By default, MIDL uses the preprocessor for the Microsoft C/C++ compiler from the same building environment as MIDL. The user can indicate a different preprocessor to be used by MIDL, if needed.

MIDL spawns separate preprocessor runs for top-level IDL and ACF files, and for each file imported with the MIDL import directive. Files included with the #include directive are handled by the preprocessor directly.

The following topics describe various aspects of MIDL-preprocessor interactions: