Welcome to the new DelphiDabbler Code Library Documentation.

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.

Shell Folders Unit Programmer’s Guide

Applies to: ~>2.0


This section of the Shell Folders Unit documentation describes the API exposed by the components to programmers.



Unit Description
PJShellFolders Provides classes, routines and two components for working with Windows shell folders.
PJShellFoldersDsgn Registers the components and provides a property editor for TPJBrowseDialog and TPJSpecialFolderInfo.

Components & Other Classes

Component Description
TPJSpecialFolderInfo Component that provides information about various special shell folders.
TPJBrowseDialog Component that configures and displays the Windows Browse For Folder dialogue box.
TPJSpecialFolderEnum Class that enumerates the shell’s special folder identifiers. This class implements the IPJSpecialFolderEnum interface.


Item Description
IPJSpecialFolderEnum Interface implemented by TPJSpecialFolderEnum.
[Routines] Various routines for working with shell folders and PIDLs
Constant Definitions Various CSIDL_xxx constants are defined to ensure the same constants are available to all versions of Delphi.

Design Time Editor

Editor class Description
TPJFolderIDPE Allows predefined special folder IDs to be selected in the object inspector by name.


This documentation complies with these conventions.