This is a new site that's currently running on alpha code. There are going to be bugs. If you discover any, please report them on the site's issues page (GitHub account required). Thanks.
Warning: Many URLs are going to change. Refer to the README file to discover which library project's documentation has been completed.
Applies to: ~>2.0
This example illustrates the use of the TPJSpecialFolderEnum class and some of the special folder support functions.
Drop a TListBox and a TLabel component on a form. When the program starts and the form is created, the list box is filled with the names of the special folder identifier constants. Double clicking an item in the list box displays the constant’s name and value (in hex) in the label.
procedure TForm1.FormCreate(Sender: TObject);
var
Enum: TPJSpecialFolderEnum;
begin
Enum := TPJSpecialFolderEnum.Create;
try
ListBox1.Clear;
Enum.Init;
while not Enum.AtEnd do
ListBox1.Items.Add(SpecialFolderIdToStr(Enum.Next));
finally
Enum.Free;
end;
end;
procedure TForm1.ListBox1DblClick(Sender: TObject);
var
Index: Integer;
begin
Index := ListBox1.ItemIndex;
if Index <> -1 then
Label1.Caption := Format('%s = $%4.4x',
[ListBox1.Items[Index],
StrToSpecialFolderID(ListBox1.Items[Index])]);
end;