IWbemServices::GetObject method
The IWbemServices::GetObject method retrieves a class or instance. This method only retrieves objects from the namespace associated with the current IWbemServices object.
Syntax
HRESULT GetObject( [in] const BSTR strObjectPath, [in] LONG lFlags, [in] IWbemContext *pCtx, [out] IWbemClassObject **ppObject, [out] IWbemCallResult **ppCallResult );
Parameters
- strObjectPath [in]
-
Path of the object to retrieve. If this is NULL, an empty object is returned that can become a new class. For more information, see Creating a Class.
- lFlags [in]
-
The following flags affect the behavior of this method.
Flag Meaning - WBEM_FLAG_USE_AMENDED_QUALIFIERS
If this flag is set, WMI retrieves the amended qualifiers stored in the localized namespace of the current connection's locale. If not set, only the qualifiers stored in the immediate namespace are retrieved.
- WBEM_FLAG_RETURN_WBEM_COMPLETE
This flag makes this a synchronous call.
- WBEM_FLAG_RETURN_IMMEDIATELY
This flag makes this a semisynchronous call. You must provide a valid pointer for the ppCallResult parameter. For more information, see Calling a Method.
- WBEM_FLAG_DIRECT_READ
This flag causes direct access to the provider for the class specified without any regard to its parent class or subclasses.
- pCtx [in]
-
Typically NULL. Otherwise, this is a pointer to an IWbemContext object that may be used by the provider that is producing the requested class or instance. The values in the context object must be specified in the documentation for the provider in question. For more information about this parameter, see Making Calls to WMI.
- ppObject [out]
-
If not NULL, this receives the object, if it is found. The returned object has a positive reference count. The caller must use Release when the object is no longer needed. In all cases of error, this parameter is set to point to NULL.
- ppCallResult [out]
-
If NULL, this parameter is not used. If the lFlags parameter contains WBEM_FLAG_RETURN_IMMEDIATELY, this call returns immediately with WBEM_S_NO_ERROR. The ppCallResult parameter receives a pointer to a new IWbemCallResult object, which can then be polled to obtain the result using the GetCallStatus method. The caller can call IWbemCallResult::GetResultObject to retrieve the object when it becomes available.
Return value
This method returns an HRESULT indicating the status of the method call. The following table lists the value contained within an HRESULT.
On failure, you can obtain any available information from the COM function GetErrorInfo.
COM-specific error codes also may be returned if network problems cause you to lose the remote connection to Windows Management.
| Return code | Description |
|---|---|
|
The current user does not have permission to access the object. |
|
This indicates other unspecified errors. |
|
The specified class does not exist. |
|
A specified parameter is not valid. |
|
The specified path was not valid. |
|
The requested object could not be found. |
|
There was not enough memory to complete the operation. |
|
Windows Management service was probably stopped and restarted. A new call to ConnectServer is needed. |
|
This indicates the failure of the remote procedure call (RPC) link between the current process and Windows Management. |
|
The call succeeded. |
Examples
For script code examples, see WMI Tasks for Scripts and Applications and the TechNet ScriptCenter Script Repository.
For C++ code examples, see WMI C++ Application Examples.
Requirements
|
Minimum supported client | Windows 2000 Professional [desktop apps only] |
|---|---|
|
Minimum supported server | Windows 2000 Server [desktop apps only] |
|
Header |
|
|
Library |
|
|
DLL |
|
See also
- IWbemServices
- Creating a Class
- Describing the Location of a WMI Object
- Retrieving an Error Code
- IWbemCallResult
- IWbemServices::GetObjectAsync
Send comments about this topic to Microsoft
Build date: 11/19/2012