MI Flags

The following flags are used by various functions in the MI API.

Runtime Type Information (RTTI) Flags

The following RTTI bitmasks specify what options are acceptable to the client.

MI_OPERATIONFLAGS_NO_RTTI

0x0400

All instance elements are string types except embedded objects and references, but their elements will be strings also.

MI_OPERATIONFLAGS_BASIC_RTTI

0x0002

All instance elements may be strings or the correct type.

MI_OPERATIONFLAGS_STANDARD_RTTI

0x0800

All instance elements are of the correct type, but some hierarchical information may be lost due to optimizations.

MI_OPERATIONFLAGS_FULL_RTTI

0x0004

All instance elements at every level of the instances class hierarchy will be accurate. This will be the slowest option.

MI_OPERATIONFLAGS_DEFAULT_RTTI

0x0000

The protocol handler will pick the best option.

Polymorphism Flags

The following polymorphism bitmasks specify what options are acceptable to the client.

MI_OPERATIONFLAGS_POLYMORPHISM_SHALLOW

0x0080

Contains simple polymorphism.

MI_OPERATIONFLAGS_POLYMORPHISM_DEEP_BASE_PROPS_ONLY

0x0180

Contains detailed polymorphism for base properties only.

Miscellaneous Flags

The following flags specify the other options that are acceptable to the client.

MI_OPERATIONFLAGS_LOCALIZED_QUALIFIERS

0x0008

Contains localized qualifiers. This flag is not supported for delete and invoke operations.

MI_OPERATIONFLAGS_EXPENSIVE_PROPERTIES

0x0040

Contains expensive properties.

MI_OPERATIONFLAGS_REPORT_OPERATION_STARTED

0x0200

Requires a report to be issued whenever an operation has started.

Requirements

Minimum supported client
Windows 8
Minimum supported server
Windows Server 2012
Redistributable
Windows Management Framework 3.0 on Windows Server 2008 R2 with SP1, Windows 7 with SP1, and Windows Server 2008 with SP2
Header
Mi.h