Expand Minimize

DRMGetBoundLicenseObject function

[The AD RMS SDK leveraging functionality exposed by the client in Msdrm.dll is available for use in Windows Server 2008, Windows Vista, Windows Server 2008 R2, Windows 7, Windows Server 2012, and Windows 8. It may be altered or unavailable in subsequent versions. Instead, use Active Directory Rights Management Services SDK 2.0, which leverages functionality exposed by the client in Msipc.dll.]

The DRMGetBoundLicenseObject function returns an object from a bound license.

Syntax


HRESULT DRMGetBoundLicenseObject(
  _In_   DRMHANDLE hQueryRoot,
  _In_   PWSTR wszSubObjectType,
  _In_   UINT iWhich,
  _Out_  DRMHANDLE *phSubObject
);

Parameters

hQueryRoot [in]

A handle to a license or license object, from a previous call to this function or from DRMCreateBoundLicense.

wszSubObjectType [in]

The type of XrML object to find. For more information, see Remarks.

iWhich [in]

Zero-based index specifying which occurrence to retrieve.

phSubObject [out]

A handle to the returned license object. Call DRMCloseHandle to close the handle.

Return value

If the function succeeds, the function returns S_OK.

If the function fails, it returns an HRESULT value that indicates the error. Possible values include, but are not limited to, those in the following table. For a list of common error codes, see Common HRESULT Values.

Return codeDescription
E_DRM_NO_MORE_DATA

No license or certificate exists at the specified index.

 

Remarks

There are many kinds of objects in a license, such as principals, rights, and access conditions. The Active Directory Rights Management system exposes an object-oriented interface to the underlying license XrML. This function, along with other DRMGetBoundLicense_xxx functions, allows an application to navigate this structure. For more information, see Querying Licenses. On first call, use the license handle itself as the query root.

On first call, this function takes the DRMHANDLE returned by DRMCreateBoundLicense.

The wszSubObjectType parameter identifies an XrML type as shown in the following example. Using g_wszQUERY_OBJECTTYPE to query the XrML would return "Group Identity Licensor."


<PRINCIPAL internal-id="1">
  <OBJECT type="Group Identity Licensor">
  <ID type="Group Identity">someone@example.com</ID> 
  <NAME>Pavel's Group Identity</NAME> 
  </OBJECT>

Call DRMCloseHandle to close the handle created by calling this function.

Requirements

Product

Rights Management Services client 1.0 SP2 or later

Header

Msdrm.h

Library

Msdrm.lib

DLL

Msdrm.dll

See also

AD RMS Functions
Querying Licenses
DRMGetBoundLicenseAttribute
DRMGetBoundLicenseAttributeCount
DRMGetBoundLicenseObjectCount

 

 

Show:
© 2014 Microsoft