/savePP switch
When the /savePP directive is specified, the MIDL compiler does not delete the output of the C/C++ preprocessor.
midl /savePP
This switch has no parameters.
This switch enables developers to discern what is being parsed by the MIDL compiler, and is useful for debugging. The output of the preprocessor is written to one or more temporary files in the directory indicated by the TEMP environment variable. The name of the output file, or files, follows a naming convention of MID*.tmp. Note that a single compile may generate several preprocessed input streams; this is because importing an IDL file, as opposed to using #include, causes a separate preprocessor run.