The ACF Header

The ACF header contains attributes that apply to the interface as a whole. Attributes applied to individual types and functions in the ACF body override the attributes in the ACF header. No attributes are required in the ACF header.

The ACF header can include one of the following attributes: auto_handle, implicit_handle, or explicit_handle. These handle attributes specify the type of handle used for implicit binding when a remote function does not have an explicit binding-handle parameter. When the ACF is not present or does not specify an auto, implicit handle, or explicit attribute, MIDL uses auto_handle for implicit binding.

Either code or nocode can appear in the interface header, but the one you choose can appear only once. When neither attribute is present, the compiler uses code as a default.