共用方式為


3.1.4.44 RGetNotifyResults (Opnum 48)

The RGetNotifyResults method<75> returns notification information when the specified status change that was previously requested by the client via RNotifyServiceStatusChange (section 3.1.4.43) occurs on a specified service.

The client MUST make one call to RGetNotifyResults for each call to RNotifyServiceStatusChange.

 error_status_t RGetNotifyResults(
   [in] SC_NOTIFY_RPC_HANDLE hNotify,
   [out] PSC_RPC_NOTIFY_PARAMS_LIST* ppNotifyParams
 );

hNotify: An SC_NOTIFY_RPC_HANDLE (section 2.2.6) data type that defines a handle to the notification status associated with the client. This is the handle returned by an RNotifyServiceStatusChange call.

ppNotifyParams: A pointer to a buffer that receives an SC_RPC_NOTIFY_PARAMS_LIST (section 2.2.24) data type.

Return Values: The method returns 0x00000000 (ERROR_SUCCESS) on success; otherwise, it returns one of the following error codes.

Return value/code

Description

6

ERROR_INVALID_HANDLE

The handle is no longer valid.

1115

ERROR_SHUTDOWN_IN_PROGRESS

The system is shutting down.

1235

ERROR_REQUEST_ABORTED

The request was aborted.

In response to this request, the server MUST wait until the service state in the service record changes to one of the values specified in the SC_RPC_NOTIFY_PARAMS (section 2.2.23) structure passed to the RNotifyServiceStatusChange method that returned the hNotify parameter. When the service changes state to one of the values specified in the SC_RPC_NOTIFY_PARAMS structure associated with the hNotify parameter, the server MUST update the client by setting the appropriate values in the ppNotifyParams parameter and returning the call.<76>

The client MUST ignore any value set in the ullThreadId parameter in ppNotifyParams.