Skip to main content
MI_Session_Subscribe function

Subscribes to an indication on the server represented by the session.


 MI_INLINE void MI_Session_Subscribe(
  _In_           MI_Session                     *session,
                 MI_Uint32                      flags,
  _In_opt_       MI_OperationOptions            *options,
                 _In_opt_z_ const MI_Char       *namespaceName,
                 _In_opt_z_ const MI_Char       *queryDialect,
                 _In_opt_z_ const MI_Char       *queryExpression,
  _In_opt_ const MI_SubscriptionDeliveryOptions *deliverOptions,
  _In_opt_       MI_OperationCallbacks          *callbacks,
  _Out_          MI_Operation                   *operation


session [in]

Session handle returned from MI_Application_NewSession.


Runtime type information (RTTI) flags.

options [in, optional]

Optional MI_OperationOptions value that specifies options such as timeouts and how to control the CIM semantics. Specify Null if no operation options are to be sent.


An optional, null-terminated string that represents the namespace name to carry out the operation. If none is specified, the server will pick a default. The namespace cannot include a computer name. It can only be in the form of a namespace name separated by a slash mark character (/). For example, the following would be a valid namespaceName value: root/cimv2.


An optional, null-terminated string that represents the dialect of the query being passed. This value can be either WQL or CQL. Note that some servers do not support both dialects.


An optional, null-terminated string that represents the query expression to be carried out. Usually a query is needed, but if a WS-Management endpoint is being used, a resource URI can be passed. For WMI DCOM transport, this value must be specified.

deliverOptions [in, optional]

Optional MI_SubscriptionDeliveryOptions structure that defines the subscription delivery options. For WMI DCOM transport, this value can be Null. For WinRM, this specifies settings such as delivery mode and push delivery credentials.

callbacks [in, optional]

Optional MI_OperationCallbacks structure that defines the operational callbacks to receive the instance result and CIM semantics. To carry out the operation asynchronously, the structure's indicationResult callback member must be specified. If this member is not specified, the client must call the MI_Operation_GetIndication function to retrieve the results.

operation [out]

Returned operation handle that must be closed via MI_Operation_Close once complete. Calling MI_Operation_Cancel before it is complete will cause the operation to shutdown. MI_Operation_Close and MI_Operation_Cancel can be called from any operation.


You must have Audit privileges to use this function if specifying the push subscriptions option.


Minimum supported client

Windows 8

Minimum supported server

Windows Server 2012


Windows Management Framework 3.0 on Windows Server 2008 R2 with SP1, Windows 7 with SP1, and Windows Server 2008 with SP2



See also

Windows Remote Management