IOlkAccountManager::EnumerateAccounts
Gets an enumerator for the accounts of the specific category or type.
Quick info
See IOlkAccountManager.
HRESULT IOlkAccountManager::EnumerateAccounts (
const CLSID *pclsidCategory,
const CLSID *pclsidType,
DWORD dwFlags,
IOlkEnum **ppEnum
);
Parameters
pclsidCategory
[in] The class identifier of the category to enumerate. The value must be one of the following:
CLSID_OlkMail
CLSID_OlkAddressBook
CLSID_OlkStore
pclsidType
[in] The class identifier of the account type to enumerate. The value must be one of the following:
CLSID_OlkPOP3Account
CLSID_OlkIMAP4Account
CLSID_OlkMAPIAccount
CLSID_OlkHotmailAccount
CLSID_OlkLDAPAccount
dwFlags
[in] Flags to modify behavior. The only supported value is OLK_ACCOUNT_NO_FLAGS.
ppEnum
[out] An enumerator that supports the IOlkEnum interface.
Return values
HRESULT | Description |
---|---|
S_OK |
The call succeeded. |
E_OLK_NOT_INITIALIZED |
The account manager has not been initialized for use. |
Remarks
Specifying NULL for category returns an enumerator of all accounts of the specified type. Similarly, specifying NULL for type returns an enumerator of all accounts of the specified category.
IOlkAccountManager::EnumerateAccounts does not support the address book category for an Exchange account. If the account is an Exchange account (pclsidType is CLSID_OlkMAPIAccount ), and you are trying to enumerate accounts that implement the address book (prgclsidCategory is CLSID_OlkAddressBook ), calling IOlkAccountManager::EnumerateAccounts will not return the Exchange account in the accounts enumerator ppEnum.