IStoreNamespace::GetFirstSubFolder method

Begins enumeration of the child folders of a specified parent folder and retrieves information about the first result.

Syntax

HRESULT GetFirstSubFolder(
  [in]      STOREFOLDERID dwFolderId,
  [in, out] LPFOLDERPROPS pProps,
  [out]     LPHENUMSTORE  phEnum
);

Parameters

dwFolderId [in]

Type: STOREFOLDERID

Specifies the folder at which enumeration will begin. Use FOLDERID_ROOT to enumerate at the top level.

pProps [in, out]

Type: LPFOLDERPROPS

Pointer to a FOLDERPROPS structure that receives properties for the first enumerated folder.

phEnum [out]

Type: LPHENUMSTORE

Pointer that receives a handle that allows for further enumeration.

Return value

Type: HRESULT

The function will return S_OK if there are more folders to enumerate. If there are no folders, the function will return S_FALSE. If an error occurs, one of the following error codes will be returned.

Return code Description
E_INVALIDARG
The value of pProps or phEnum is NULL.
MSOEAPI_E_STORE_INITIALIZE
The namespace has not been initialized. To initialize the namespace, call IStoreNamespace::Initialize.

Remarks

This method will begin enumeration on a folder to list the child folders underneath it, but will only return the first result. To continue enumerating folders, call IStoreNamespace::GetNextSubFolder, passing the handle stored in phEnum as the first argument.

When you have completed enumerating folders, call IStoreNamespace::GetSubFolderClose to free memory associated with the enumeration.

The enumeration is not recursive.

Requirements

Minimum supported client
Windows XP [desktop apps only]
Minimum supported server
Windows Server 2003 [desktop apps only]
Product
Outlook Express 6.0
Header
Msoeapi.h
IDL
Msoeapi.idl
DLL
Inetcomm.dll (version 6.0 or later)

See also

IStoreNamespace

Reference

GetNextSubFolder

GetSubFolderClose