SLGetServiceInformation function (slpublic.h)

Gets global data information.

Syntax

HRESULT SLGetServiceInformation(
  [in]            HSLC       hSLC,
  [in]            PCWSTR     pwszValueName,
  [out, optional] SLDATATYPE *peDataType,
  [out]           UINT       *pcbValue,
  [out]           PBYTE      *ppbValue
);

Parameters

[in] hSLC

Type: HSLC

The handle to the current SLC context.

[in] pwszValueName

Type: PCWSTR

The name associated with the value to retrieve. The following names are valid.

Value Meaning
SL_INFO_KEY_VERSION
L"Version"
Version of SL service. e.g. "1.2.3.4"
SL_INFO_KEY_SYSTEM_STATE
L"SystemState"
System State
SL_INFO_KEY_ACTIVE_PLUGINS
L"ActivePlugins"
Fully-qualified DLL paths for all active plugins (NULL delimited and double NULL-terminated)
SL_INFO_KEY_SECURE_STORE_ID
L"SecureStoreId"
Secure store ID (GUID)
SL_INFO_KEY_SESSION_MACHINE_ID
L"SessionMachineId"
Session machine ID (Binary BLOB)

[out, optional] peDataType

Type: SLDATATYPE*

A pointer to a value of the SLDATATYPE enumeration that specifies the type of data in the ppbValue buffer.

Value Meaning
SL_DATA_SZ
UNICODE string
SL_DATA_DWORD
DWORD
SL_DATA_BINARY
Binary blob
SL_DATA_MULTI_SZ
Double null-terminated UNICODE string array

[out] pcbValue

Type: UINT*

A pointer to the size, in bytes, of the ppbValue buffer.

[out] ppbValue

Type: PBYTE*

If successful, the data is returned in the buffer allocated by SLC.
When finished using the memory, free it by calling the LocalFree function.

Return value

Type: HRESULT WINAPI

If this function succeeds, it return S_OK. Otherwise, it returns an HRESULT error code.

Return code/value Description
E_INVALIDARG
0x80070057
One or more arguments are not valid.
SL_E_VALUE_NOT_FOUND
0xC004F012
The value for the input key was not found.

Requirements

Requirement Value
Minimum supported client Windows 8 [desktop apps only]
Minimum supported server Windows Server 2012 [desktop apps only]
Target Platform Windows
Header slpublic.h
Library Slc.lib
DLL Slc.dll