[This is preliminary documentation and subject to change.]
The IWbemServices::PutClassAsync method creates a new class, or it updates an existing one. The class specified by the pObject parameter must be correctly initialized with all of the required property values. The call immediately returns. Success or failure is supplied to the object sink specified by the pResponseHandler parameter.
HRESULT IWbemServices::PutClassAsync(
[in] IWbemClassObject *pObject,
[in] LONG lFlags,
[in] IWbemContext *pCtx,
[in] CALLBACK *pResponseHandler
);
WBEM_E_ACCESS_DENIED | The current user does not have permission to create classes. |
WBEM_E_ALREADY_EXISTS | WBEM_FLAG_CREATE_ONLY flag was specified but the class already exists. |
WBEM_E_FAILED | Unspecified failure. |
WBEM_E_INVALID_CLASS | |
WBEM_E_INVALID_PARAMETER | An invalid parameter was specified, or the namespace could not be parsed. |
WBEM_E_NOT_FOUND | WBEM_FLAG_UPDATE_ONLY flag was specified, but the class does not exist. |
WBEM_E_OUT_OF_MEMORY | There was not enough memory to complete the operation. |
WBEM_E_TRANSPORT_FAILURE | The communications link between the current process and CIMOM has failed. |
WBEM_NO_ERROR | The call succeeded. |
Other status or error codes are reported to the object sink specified by the pReponseHandler parameter.
Asynchronous Methods, Class Creation and Modification Rules, IWbemServices::PutClass