Table of Contents
Whirling Dervishes NSELib
Definitions
The Shell Namespace
Namespace Extensions
Junction Points
The Object Model
Folders
Items
UI Objects
Getting started
Creating a New Shell Namespace Extension Project
Namespace Extension Wizard Pages
NSE Type Page
System Folder Page
File Viewer Page
URL Protocol Handler Page
Features Page
Understanding the Files in a New Project
Getting Results
Getting the Current Folder
Populating Your Folders
Returning Correct Item Attributes
Adding Columns to the Details View
Sorting Items
Providing More Item Details
Supporting Data Transfer
Being a data source
Being a data target
Adding a data format
Supporting Renames
Extending Context Menus
Customizing Folder Tasks
Displaying your NSE in the Open/Save dialogs
Classes
CActionNameSpaceItem
CActionUIObject
CAutoNameSpaceExtension
CContextMenu
CEnterCriticalSection
CNameSpaceApp
CNameSpaceExtension
CNameSpaceFactory
CNameSpaceItem
COsVersionInfo
CRegKeyArray
CShellUIObject
CShortcutNameSpaceItem
CShortcutUIObject
CXPStyleActivator
Debugging functions
IsInterfaceSupported
PrintInterfaceName
PrintSupportedInterfaces
Dynamic linking of Shell32 functions
SafeCDefFolderMenu_Create2
SafeSHGetSettings
Misc. functions
NSECreateHGlobalOnStream
NSECreateStandardPreview
NSEFormatSize
NSEGetAttributesFromMenu
NSEGetPreferredDropEffect
NSERefreshAllExplorerWindows
NSELib general functions
DllCanUnloadNow
NSEAddRef
NSEGetApp
NSEInitialize
NSERelease
NSEUninitialize
PIDL functions
ILAppend
ILCloneAllExceptLast
ILCreate
ILFindLastUserData
ILGetCount
ILGetUserData
ILIsChild
Registering/Unregistering functions
NSEBackupKey
NSEExportFile
NSEIsKeyMarked
NSEMarkKey
NSERegisterInterface
NSERegisterUrlPrefix
NSERegisterWebPage
NSERestoreKey
NSEUnexportFile
NSEUnregisterInterface
NSEUnregisterUrlPrefix
NSEUnregisterWebPage
RegCopyKeyCompletely
RegDeleteKeyCompletely
RegKeyExists
Type Definitions
_DATACACHEENTRY
_MENUCACHEENTRY
_SUBITEMDATA
CPCATEGORY
JUNCTIONPOINT
REGKEYENTRY
sDATACACHEENTRY
sMENUCACHEENTRY
sSUBITEMDATA
URL helper functions
NSEUrlDecode
Interfaces
IDefMenuCallback
IGetNameSpaceExtensionPointer
Macros
CFSTR_NSELIB_CLSID
MENUTYPE_BACKGROUND
MENUTYPE_DEFMENU
MENUTYPE_FRAME
MENUTYPE_ROOT
MENUTYPE_SELECTION
MENUTYPE_TREE
Dynamic linking of Kernel32 functions
SafeActivateActCtx
SafeCreateActCtxA
SafeCreateActCtxW
SafeDeactivateActCtx
SafeReleaseActCtx
Class Hierarchy