3.1.4.19.4 IsRunning (Opnum 8)

This method is called by a client to determine whether instance load balancing is running.

 HRESULT IsRunning(
   [in] CatSrvServices i_css,
   [out] CatSrvServiceState* pulStates
 );

i_css: MUST be set to css_lb (see section 2.2.7).

pulStates: A pointer to a variable that, upon a successful return, MUST be set to the CatSrvServiceState (section 2.2.8) value that indicates the current running state of instance load balancing.

Return Values: This method MUST return S_OK (0x00000000) on success, and a failure result, as specified in [MS-ERREF] section 2.1, on failure. All failure results MUST be treated identically.

Upon receiving a call to this method, the server MUST verify that the parameters are valid, as specified previously, and fail the call if not.

If the server does not support instance load balancing, the server MUST immediately fail the call.

Otherwise, the server MUST attempt to determine whether instance load balancing support is installed. If the server is unable to determine whether instance load balancing support is installed, or if support is not installed, the server SHOULD set the value referenced by pulStatus to css_serviceUnknownState (see section 2.2.8) and return S_OK (0x00000000).

Otherwise, the server MUST attempt to determine if instancing load balancing support is running and, if so, what state it is in. If the server is unable to do so, it SHOULD set the value referenced by pulStatus to css_serviceUnknownState (section 2.2.8) and return S_OK (0x00000000).

Otherwise, the server MUST set the value referenced by pulStates to the CatSrvServiceState (section 2.2.8) value that indicates the current running state of instance load balancing.