GetFolderNames method

This method is intended for use with C/C++.

Method
short GetFolderNames(
IUnknown * pNames,
short MaxNames )
Parameters:
pNames
Points to an array of ArsOleNames to receive the names of the folders available for the current server. The array must have at least MaxNames elements.
MaxNames
Specifies the maximum number of names to be returned.
Description
The names of the folders available for the current server, up to a maximum of MaxNames, are returned in pNames. Each name is a null-terminated character string.

GetFolderName or GetFolderNames can be used to retrieve the folder names. An application should use the one which is more convenient in its environment.

Return Value
Refer to return codes.
See Also
GetNumFolders, GetFolderName, and OpenFolder methods

C/C + +

The following example retrieves the names of all folders available for the current server, puts them in a ComboBox control, retrieves the chosen folder, and performs an open for that folder.
 CArsOle * pArsCtrl;
 ArsOleName * pFolderNames;
 CComboBox * pFoldersList;
 char folder[ sizeof( ArsOleName ) ];
 short rc, j, num_folders;
 int index;
 VARIANT vari;
   .
   .

 // During dialog initialization:

 rc = pArsCtrl->GetNumFolders( &vari );
 if ( rc != ARS_OLE_RC_SUCCESS )
   ERROR;
 num_folders = var.iVal;

 pFolderNames = new ArsOleName[ max( num_folders, 1 ) ];
 rc = pArsCtrl->GetFolderNames( (IUnknown*)pFolderNames, num_folders );
 if ( rc != ARS_OLE_RC_SUCCESS )
   ERROR;

 for ( j = 0; j < num_folders; j++ )
   index = pFoldersList->AddString( pFolderNames[j] );
 pFoldersList->SetCurSel( 0 );
   .
   .
  // During OK button processing:

  pFoldersList->GetWindowText( folder, sizeof(folder) );

  rc = pArsCtrl->OpenFolder( folder );
  if ( rc != ARS_OLE_RC_SUCCESS )
    ERROR;
   .
   .