Notice:This is preliminary documentation for technology that will be supported in future releases of Microsoft Windows.
The LSQuery function returns information about the service provider or the license system context associated with the specified handle obtained by a call to the LSRequest function.
LS_STATUS_CODE LS_API_ENTRY LSQuery(
LS_HANDLE LicenseHandle, | // handle to the license context |
LS_ULONG Information, | // index that identifies the license information |
LS_VOID *InfoBuffer, | // pointer to buffer for returning license information |
LS_ULONG BufferSize, | // maximum size of buffer |
LS_ULONG *ActualBufferSize | // pointer to actual count of characters returned in buffer |
); |
Parameters
LicenseHandle
[in] Specifies the handle to the license context. This parameter must be a handle created with the LSRequest function.
Information
[in] Specifies the index that identifies the information to be returned.
InfoBuffer
[out] Points to a buffer in which the resulting information is to be placed.
BufferSize
[in] Specifies, in bytes, the maximum size of the buffer pointed to by the InfoBuffer parameter.
ActualBufferSize
[out] Points to an LS_ULONG value that specifies the actual number of characters returned in the buffer, not including the trailing NULL byte.
Return Values
If the function succeeds, the return value is LS_SUCCESS.
If the function fails, the return value is a status code. For extended error information, call LSGetMessage to return the status text corresponding to the status code. The LSGetMessage function may return one of the following status codes:
Value | Meaning |
LS_BAD_HANDLE | The handle used on the call does not describe a valid licensing system context. |
LS_RESOURCES_UNAVAILABLE | The request cannot be completed because of insufficient resources, such as memory. |
LS_BAD_INDEX | An invalid index was specified in a call to the LSEnumProviders or the LSQuery function. |
LS_BUFFER_TOO_SMALL | The buffer that the Buffer parameter points to is too small to accommodate the text string to be returned; or the challenge data structure is too small to accommodate the challenge response. |
LS_BAD_ARG | One or more of the arguments is incorrect. |
Remarks
The LSQuery function is used to obtain information about the license obtained from a call to the LSRequest function. For example, an application can determine the license type (demo, concurrent, personal, and so forth) and time restrictions.
The buffer should be large enough to accommodate the expected data. If the buffer is too small, then the status code LS_BUFFER_TOO_SMALL is returned and only the number of bytes specified in the parameter BufferSize is returned.
See Also