ListCount Example
InstallShield 2024 » InstallScript Language Reference
Note:To call this function in a Basic MSI setup, you must first create a custom action for the entry-point function, execute the custom action in a sequence or as the result of a dialog's control event, and then build the release.
/*--------------------------------------------------------------*\
*
* InstallShield Example Script
*
* Demonstrates the ListCount function.
*
* The following adds the names of the program folders to a
* string list and then displays the number of strings in
* the list.
*
\*--------------------------------------------------------------*/
// Include Ifx.h for built-in InstallScript function prototypes.
#include "Ifx.h"
export prototype ExFn_ListCount(HWND);
function ExFn_ListCount(hMSI)
STRING svString;
LIST listID;
NUMBER nCount;
begin
// Create a string list.
listID = ListCreate (STRINGLIST);
// If an error occurred, report it; then terminate.
if (listID = LIST_NULL) then
MessageBox ("Unable to create list.", SEVERE);
abort;
endif;
// Get the names of the program folders into a list.
GetGroupNameList (listID);
// Count the number of program folders in the list.
nCount = ListCount (listID);
// Report error or display the folder count.
if (nCount < 0) then
MessageBox ("ListCount failed.", SEVERE);
else
SprintfBox (INFORMATION, "ListCount",
"There are %i program folders.", nCount);
endif;
// Remove the list from memory.
ListDestroy (listID);
end;