The FOLDER_INFO structure contains information that describes the properties of a folder or container.
typedef struct _FOLDER_INFO {
BASETYPE tObjectity;
char *pszTag;
DWORD dwTag;
DWORD ctFolders;
DWORD *pFolderTags;
DWORD ctFilters;
DWORD *pFilterTags;
DWORD ctScalars;
SCALAR_INFO *pScalars;
void *pNewFunc;
} FOLDER_INFO;
The FOLDER_INFO structure contains information about folders of a specific type, such as the tag, the number of types of subfolders that are supported, the list of scalars for the folder type, and so on. The FOLDER_INFO structure can also be used to store information about containers of a specific type.
The FOLDER_INFO structure is used by the SmsDescribeFolder, SmsEnumContainers, and SmsEnumFolders functions.
Because the FOLDER_INFO structure is used to describe both containers and folders, this member indicates which of these types is being described.
When your application calls the SmsDescribeFolder engine API, a pointer to a pointer to a FOLDER_INFO structure is returned. This structure will have been created in the process of registering a folder (or container) with the engine. It contains global data about a folder of the specified type, rather than information about an instance of one of these folders. The information contained in this structure will be true for all folders of the specified type.
The returned pointer addresses memory inside the SMS API engine and should not be modified or deleted.
Note Machine folders currently do not register their scalars; therefore, the ctScalars member will be zero. This does not necessarily mean that these types of folders have no scalars. It simply indicates that the set of scalars is currently unknown.