Structures and Enumerations

Structures and Enumerations


This section describes the Microsoft® Windows® shell structures and enumerations.

Structures
APPBARDATA
BROWSEINFO
CIDA
CMINVOKECOMMANDINFO
DESKBANDINFO
FOLDERSETTINGS
FVSHOWINFO
ITEMIDLIST
NOTIFYICONDATA
SHDESCRIPTIONID
SHELLEXECUTEINFO
SHELLFLAGSTATE
SHFILEINFO
SHFILEOPSTRUCT
SHITEMID
SHNAMEMAPPING
SHQUERYRBINFO
STRRET
SV2CVW2_PARAMS (No documentation available at this time.)

Enumerations
FOLDERFLAGS
FOLDERVIEWMODE
SHCONTF
SHGNO

Shell Structures

The following structures are used with the shell programming elements.

APPBARDATA

typedef struct _AppBarData {
    DWORD  cbSize; 
    HWND   hWnd; 
    UINT   uCallbackMessage;
    UINT   uEdge; 
    RECT   rc; 
    LPARAM lParam; 
} APPBARDATA, *PAPPBARDATA; 

Contains information about a system application bar message. This structure is used with the SHAppBarMessage function.

cbSize
Contains the size of the structure, in bytes.
hWnd
Contains the handle to the application bar window.
uCallbackMessage
Application-defined message identifier. The application uses the specified identifier for notification messages that it sends to the application bar identified by the hWnd member. This member is used when sending the ABM_NEW message.
uEdge
Value that specifies an edge of the screen. This member can be one of the following values:
ABE_BOTTOM Bottom edge.
ABE_LEFT Left edge.
ABE_RIGHT Right edge.
ABE_TOP Top edge.

This member is used when sending the ABM_GETAUTOHIDEBAR, ABM_QUERYPOS, ABM_SETAUTOHIDEBAR, and ABM_SETPOS messages.

rc
RECT structure to contain the bounding rectangle, in screen coordinates, of an application bar or the Windows taskbar. This member is used when sending the ABM_GETTASKBARPOS, ABM_QUERYPOS, and ABM_SETPOS messages.
lParam
Message-dependent value. This member is used with the ABM_SETAUTOHIDEBAR message.

BROWSEINFO

typedef struct _browseinfo { 
    HWND hwndOwner; 
    LPCITEMIDLIST pidlRoot; 
    LPSTR pszDisplayName; 
    LPCSTR lpszTitle; 
    UINT ulFlags; 
    BFFCALLBACK lpfn; 
    LPARAM lParam; 
    int iImage; 
} BROWSEINFO, *PBROWSEINFO, *LPBROWSEINFO; 

Contains parameters for the SHBrowseForFolder function and receives information about the folder selected by the user.

hwndOwner
Handle to the owner window for the dialog box.
pidlRoot
Address of an ITEMIDLIST structure specifying the location of the root folder from which to browse. Only the specified folder and its subfolders appear in the dialog box. This member can be NULL; in that case, the namespace root (the desktop folder) is used.
pszDisplayName
Address of a buffer to receive the display name of the folder selected by the user. The size of this buffer is assumed to be MAX_PATH bytes.
lpszTitle
Address of a null-terminated string that is displayed above the tree view control in the dialog box. This string can be used to specify instructions to the user.
ulFlags
Flags specifying the options for the dialog box. This member can include zero or a combination of the following values:
BIF_BROWSEFORCOMPUTER Only return computers. If the user selects anything other than a computer, the OK button is grayed.
BIF_BROWSEFORPRINTER Only return printers. If the user selects anything other than a printer, the OK button is grayed.
BIF_BROWSEINCLUDEFILES The browse dialog will display files as well as folders.
BIF_DONTGOBELOWDOMAIN Do not include network folders below the domain level in the tree view control.
BIF_EDITBOX Version 4.71. The browse dialog includes an edit control in which the user can type the name of an item.
BIF_RETURNFSANCESTORS Only return file system ancestors. If the user selects anything other than a file system ancestor, the OK button is grayed.
BIF_RETURNONLYFSDIRS Only return file system directories. If the user selects folders that are not part of the file system, the OK button is grayed.
BIF_STATUSTEXT Include a status area in the dialog box. The callback function can set the status text by sending messages to the dialog box.
BIF_VALIDATE Version 4.71. If the user types an invalid name into the edit box, the browse dialog will call the application's BrowseCallbackProc with the BFFM_VALIDATEFAILED message. This flag is ignored if BIF_EDITBOX is not specified.
lpfn
Address of an application-defined function that the dialog box calls when an event occurs. For more information, see the BrowseCallbackProc function. This member can be NULL.
lParam
Application-defined value that the dialog box passes to the callback function, if one is specified.
iImage
Variable to receive the image associated with the selected folder. The image is specified as an index to the system image list.

CIDA

typedef struct _IDA {  
    UINT cidl;
    UINT aoffset[1];
} CIDA, * LPIDA; 

Contains one variable-sized element of an ITEMIDLIST. This structure is used with the "Shell IDList Array" clipboard format.

cidl
Number of array elements.
aoffset
Array of offsets relative to the beginning of this structure. The first element is the offset of the ITEMIDLIST structure for a folder (absolute from the root). If the ITEMIDLIST for the folder is empty (Mkid.cb is 0), the parent folder is the desktop itself. Subsequent elements are offsets of ITEMIDLIST structures for file objects (relative from the parent folder).

CMINVOKECOMMANDINFO

typedef struct _CMInvokeCommandInfo{ 
    DWORD cbSize; 
    DWORD fMask; 
    HWND hwnd; 
    LPCSTR lpVerb; 
    LPCSTR lpParameters; 
    LPCSTR lpDirectory; 
    int nShow; 
    DWORD dwHotKey; 
    HANDLE hIcon; 
} CMINVOKECOMMANDINFO, *LPCMINVOKECOMMANDINFO; 

Contains information about a context menu command.

cbSize
Contains the size of this structure, in bytes.
fMask
Zero, or one or more of the following flags:
CMIC_MASK_HOTKEY The dwHotKey member is valid.
CMIC_MASK_ICON The hIcon member is valid.
CMIC_MASK_FLAG_NO_UI The system is prevented from displaying user interface elements (for example, error messages) while carrying out a command.
hwnd
Handle of the window that is the owner of the context menu. An extension can also use this handle as the owner of any message boxes or dialog boxes it displays.
lpVerb
A 32-bit value that contains zero in the high-order word and a menu-identifier offset of the command to carry out in the low-order word. The shell specifies this value (using the MAKEINTRESOURCE macro) when the user chooses a menu command.
If the high-order word is not zero, this member is the address of a null-terminated string specifying the language-independent name of the command to carry out. This member is typically a string when a command is being activated by an application. The system provides predefined constant values for the following command strings.
Value String
CMDSTR_NEWFOLDER "NewFolder"
CMDSTR_VIEWDETAILS "ViewDetails"
CMDSTR_VIEWLIST "ViewList"
lpParameters
Optional parameters. This member is always NULL for menu items inserted by a shell extension.
lpDirectory
Optional working directory name. This member is always NULL for menu items inserted by a shell extension.
nShow
Set of SW_ values to pass to the ShowWindow function if the command displays a window or starts an application.
dwHotKey
Optional hot key to assign to any application activated by the command. If the fMask parameter does not specify CMIC_MASK_HOTKEY, this member is ignored.
hIcon
Icon to use for any application activated by the command. If the fMask member does not specify CMIC_MASK_ICON, this member is ignored.

The address of this structure is passed to the IContextMenu::InvokeCommand method.

DESKBANDINFO

typedef struct {
    DWORD       dwMask;
    POINTL      ptMinSize;
    POINTL      ptMaxSize;
    POINTL      ptIntegral;
    POINTL      ptActual;
    WCHAR       wszTitle[256];
    DWORD       dwModeFlags;
    COLORREF    crBkgnd;
} DESKBANDINFO; 

Contains and receives information for a band object. This structure is used with the IDeskBand::GetBandInfo method.

dwMask
Set of flags that determine which members of this structure are being requested. This will be a combination of the following values:
DBIM_MINSIZE ptMinSize is being requested.
DBIM_MAXSIZE ptMaxSize is being requested.
DBIM_INTEGRAL ptIntegral is being requested.
DBIM_ACTUAL ptActual is being requested.
DBIM_TITLE wszTitle is being requested.
DBIM_MODEFLAGS dwModeFlags is being requested.
DBIM_BKCOLOR crBkgnd is being requested.
ptMinSize
POINTL structure that receives the minimum size of the band object. The minimum width is placed in the x member and the minimum height is placed in the y member.
ptMaxSize
POINTL structure that receives the maximum size of the band object. The maximum width is placed in the x member and the maximum height is placed in the y member. If there is no limit for one or both of the maximum sizes, (LONG)-1 should be used.
ptIntegral
POINTL structure that receives the sizing step value of the band object. The horizontal step value is placed in the x member and the vertical step value is placed in the y member. The step value determines in what increments the band will be resized. This member is ignored if dwModeFlags does not contain DBIMF_VARIABLEHEIGHT.
ptActual
POINTL structure that receives the ideal size of the band object. The ideal width is placed in the x member and the ideal height is placed in the y member. The band container will attempt to use these values, but the band is not guaranteed to be this size.
wszTitle
WCHAR buffer that receives the title of the band.
dwModeFlags
Receives a set of flags that define the mode of operation for the band object. This must be one or a combination of the following values:
DBIMF_NORMAL The band is normal in all respects. The other mode flags modify this flag.
DBIMF_VARIABLEHEIGHT The height of the band object can be changed. The ptIntegral member defines the step value by which the band object can be resized.
DBIMF_DEBOSSED The band object is displayed with a sunken appearance.
DBIMF_BKCOLOR The band will be displayed with the background color specified in crBkgnd.
crBkgnd
Receives the background color of the band. This member is ignored if dwModeFlags does not contain the DBIMF_BKCOLOR flag.

Version 4.71

FOLDERSETTINGS

typedef struct {  
    UINT     ViewMode; 
    UINT     fFlags; 
}FOLDERSETTINGS; *LPFOLDERSETTINGS;

Contains folder view information.

ViewMode
Specifies the folder view mode. This can be one of the FOLDERVIEWMODE values.
fFlags
Set of flags that indicate the options for the folder. This can be zero or a combination of the FOLDERFLAGS values.

These settings assume a particular user interface, which the shell's folder view has. A shell extension can use these settings if they apply to the view implemented by the extension.

See also IShellView::CreateViewWindow, IShellView::GetCurrentInfo

FVSHOWINFO

typedef struct {
    DWORD cbSize;
    HWND hwndOwner;
    int iShow;
    DWORD dwFlags;
    RECT rect;
    LPUNKNOWN punkRel;
    OLECHAR strNewFile[MAX_PATH];
} FVSHOWINFO, *LPFVSHOWINFO;

Contains information that the file viewer uses to display a file.

cbSize
Size of the structure, in bytes.
hwndOwner
Window handle to the owner of the window in which the file will be displayed.
iShow
Show command for the window. This parameter is one of the SW_ values detailed in ShowWindow.
dwFlags
Flags that determine what the file viewer displays. This member can be one or more of the following values:
FVSIF_CANVIEWIT The file viewer can display the file.
FVSIF_NEWFAILED The file viewer specified a new file to display, but no viewer could display the file. The file viewer should either continue to display the previous file or terminate.
FVSIF_NEWFILE A drag-and-drop operation has dropped a file on the file viewer window. The file viewer passes the name of the file to the shell by copying the name to the strNewFile member. The shell attempts to load a file viewer that can display the new file.
FVSIF_PINNED A pinned window exists. A file viewer should either use the pinned window to display the file or set a new pinned window and display the file in it.
FVSIF_RECT The rect member contains valid data.
rect
RECT structure that specifies the size and position of the file viewer's window. This member is valid only if the dwFlags member includes the FVSIF_RECT value.
punkRel
Address of an interface that has its Release method called by a new file viewer to release the previous file viewer. This member is used when a drag-and-drop operation drops a file on the file viewer's window.
strNewFile
Address of a string that specifies the name of a new file to display. A file viewer sets this member when a drag-and-drop operation drops a file on the file viewer's window.

ITEMIDLIST

typedef struct _ITEMIDLIST {
    SHITEMID mkid;
} ITEMIDLIST, * LPITEMIDLIST; 
typedef const ITEMIDLIST * LPCITEMIDLIST; 

Contains a list of item identifiers.

mkid
List of item identifiers.

NOTIFYICONDATA

typedef struct _NOTIFYICONDATA { 
    DWORD cbSize; 
    HWND hWnd; 
    UINT uID; 
    UINT uFlags; 
    UINT uCallbackMessage; 
    HICON hIcon; 
    char szTip[64]; 
} NOTIFYICONDATA, *PNOTIFYICONDATA; 
 

Contains information that the system needs to process taskbar status area messages.

cbSize
Size of this structure, in bytes.
hWnd
Handle of the window that will receive notification messages associated with an icon in the taskbar status area.
uID
Application-defined identifier of the taskbar icon.
uFlags
Array of flags that indicate which of the other members contain valid data. This member can be a combination of the following:
NIF_ICON The hIcon member is valid.
NIF_MESSAGE The uCallbackMessage member is valid.
NIF_TIP The szTip member is valid.
uCallbackMessage
Application-defined message identifier. The system uses this identifier for notification messages that it sends to the window identified in hWnd. These notifications are sent when a mouse event occurs in the bounding rectangle of the icon.
hIcon
Handle to the icon to add, modify, or delete.
szTip
Tooltip text to display for the icon.

SHDESCRIPTIONID

typedef struct SHDESCRIPTIONID{
    DWORD   dwDescriptionId;
    CLSID   clsid;
} SHDESCRIPTIONID, *LPSHDESCRIPTIONID;

Receives item data in response to a call to SHGetDataFromIDList.

dwDescriptionId
Receives a value that determines what type the item is. This can be one of the following values:
SHDID_ROOT_REGITEM The item is a registered item on the desktop.
SHDID_FS_FILE The item is a file.
SHDID_FS_DIRECTORY The item is a folder.
SHDID_FS_OTHER The item is an unidentified item in the file system.
SHDID_COMPUTER_DRIVE35 The item is a 3.5-inch floppy drive.
SHDID_COMPUTER_DRIVE525 The item is a 5.25-inch floppy drive.
SHDID_COMPUTER_REMOVABLE The item is a removable disk drive.
SHDID_COMPUTER_FIXED The item is a fixed disk drive.
SHDID_COMPUTER_NETDRIVE The item is a drive that is mapped to a network share.
SHDID_COMPUTER_CDROM The item is a CD-ROM drive.
SHDID_COMPUTER_RAMDISK The item is a RAM disk.
SHDID_COMPUTER_OTHER The item is an unidentified system device.
SHDID_NET_DOMAIN The item is a network domain.
SHDID_NET_SERVER The item is a network server.
SHDID_NET_SHARE The item is a network share.
SHDID_NET_RESTOFNET Not currently used.
SHDID_NET_OTHER The item is an unidentified network resource.
clsid
Receives the CLSID of the object to which the item belongs.

SHELLEXECUTEINFO

typedef struct _SHELLEXECUTEINFO{
    DWORD cbSize; 
    ULONG fMask; 
    HWND hwnd; 
    LPCTSTR lpVerb; 
    LPCTSTR lpFile; 
    LPCTSTR lpParameters; 
    LPCTSTR lpDirectory; 
    int nShow; 
    HINSTANCE hInstApp; 
 
    // Optional members 
    LPVOID lpIDList; 
    LPCSTR lpClass; 
    HKEY hkeyClass; 
    DWORD dwHotKey; 
    HANDLE hIcon; 
    HANDLE hProcess; 
} SHELLEXECUTEINFO, FAR *LPSHELLEXECUTEINFO; 
 

Contains information used by the ShellExecuteEx function.

cbSize
Size of the structure, in bytes.
fMask
Array of flags that indicate the content and validity of the other structure members. This can be a combination of the following values:
SEE_MASK_CLASSKEY Use the class key given by the hkeyClass member.
SEE_MASK_CLASSNAME Use the class name given by the lpClass member.
SEE_MASK_CONNECTNETDRV Validate the share and connect to a drive letter. The lpFile member is a Universal Naming Convention (UNC) path of a file on a network.
SEE_MASK_DOENVSUBST Expand any environment variables specified in the string given by the lpDirectory or lpFile member.
SEE_MASK_FLAG_DDEWAIT Wait for the DDE conversation to terminate before returning (if the ShellExecuteEx function causes a DDE conversation to start).
SEE_MASK_FLAG_NO_UI Do not display an error message box if an error occurs.
SEE_MASK_HOTKEY Use the hot key given by the dwHotKey member.
SEE_MASK_ICON Use the icon given by the hIcon member.
SEE_MASK_IDLIST Use the item identifier list given by the lpIDList member.
SEE_MASK_INVOKEIDLIST Use the item identifier list given by the lpIDList member to invoke an application. If this member is NULL, the function creates an item identifier list and invokes the application. This flag overrides the SEE_MASK_IDLIST flag.
SEE_MASK_NOCLOSEPROCESS Leave the process running after the ShellExecuteEx function exits. The hProcess member receives the handle to the process.
hwnd
Window handle to any message boxes that the system may produce while executing this function.
lpVerb
Address of a string specifying the name of a verb. The verb specifies an action for the application to perform. This member defaults to Open if no verb is specified.
lpFile
Address of a list of null-terminated strings that specify the names of the files to open or print. The function can open an executable file or a document file, but it can only print a document file. If the path is not included with the name, the current directory is assumed.
lpParameters
Address of a null-terminated string containing the application parameters. The parameters must be separated by spaces. To include double quotation marks, you must enclose the marks in double quotation marks, as in the following example:
sei.lpParameters = "An example: \"\"\"quoted text\"\"\"";

In this case, the application receives three parameters: An, example:, and "quoted text".

If the lpFile member specifies a document file, this member should be NULL.

lpDirectory
Address of a null-terminated string that specifies the name of the working directory. If this member is not specified, the current directory is used as the working directory.
nShow
Show flags. Can be one of the SW_ values described for the ShowWindow function. If the lpFile specifies an executable file, this member specifies how the application is to be shown when it is opened.
hInstApp
Receives a value greater than 32 if successful; or an error value that is less than or equal to 32 otherwise. Error values can be one of the following:
SE_ERR_FNF File not found.
SE_ERR_PNF Path not found.
SE_ERR_ACCESSDENIED Access denied.
SE_ERR_OOM Out of memory.
SE_ERR_DLLNOTFOUND Dynamic-link library not found.
SE_ERR_SHARE Cannot share an open file.
SE_ERR_ASSOCINCOMPLETE File association information not complete.
SE_ERR_DDETIMEOUT DDE operation timed out.
SE_ERR_DDEFAIL DDE operation failed.
SE_ERR_DDEBUSY DDE operation is busy.
SE_ERR_NOASSOC File association not available.
lpIDList
Address of an ITEMIDLIST structure to contain an item identifier list uniquely identifying the file to execute. This member is ignored if the fMask member is not set to SEE_MASK_IDLIST.
lpClass
Address of a null-terminated string specifying the name of a file class or a globally unique identifier (GUID).This member is ignored if fMask is not set to SEE_MASK_CLASSNAME.
hkeyClass
Handle to the registry key for the file class. This member is ignored if fMask is not set to SEE_MASK_CLASSKEY.
dwHotKey
Hot key to associate with the application. The low-order word is the virtual key code, and the high-order word is a modifier flag (HOTKEYF_). For a list of modifier flags, see the description of the WM_SETHOTKEY message. This member is ignored if fMask is not set to SEE_MASK_HOTKEY.
hIcon
Handle to the icon for the file class. This member is ignored if fMask is not set to SEE_MASK_ICON.
hProcess
Handle to the newly started application. This member is set on return and is always NULL if fMask is not set to SEE_MASK_NOCLOSEPROCESS.

SHELLFLAGSTATE

typedef struct {
    BOOL fShowAllObjects : 1;
    BOOL fShowExtensions : 1;
    BOOL fNoConfirmRecycle : 1;
    BOOL fShowSysFiles : 1;
    BOOL fShowCompColor : 1;
    BOOL fDoubleClickInWebView : 1;
    BOOL fDesktopHTML : 1;
    BOOL fWin95Classic : 1;
    BOOL fDontPrettyPath : 1;
    BOOL fShowAttribCol : 1;
    BOOL fMapNetDrvBtn : 1;
    BOOL fShowInfoTip : 1;
    BOOL fHideIcons : 1;
    UINT fRestFlags : 3;
} SHELLFLAGSTATE, * LPSHELLFLAGSTATE;

Contains a set of flags that indicate the current shell settings. This structure is used with the SHGetSettings function.

fShowAllObjects
Nonzero if the Show All Files option is enabled or zero otherwise.
fShowExtensions
Nonzero if the Hide File Extensions for Known File Types option is disabled or zero otherwise.
fNoConfirmRecycle
Nonzero if the Display Delete Confirmation Dialog box in the Recycle Bin is enabled or zero otherwise.
fShowSysFiles
Nonzero if the Do Not Show Hidden Files option is selected or zero otherwise.
fShowCompColor
Nonzero if the Display Compressed Files and Folders with Alternate Color option is enabled or zero otherwise.
fDoubleClickInWebView
Nonzero if the Double-Click to Open an Item option is enabled or zero otherwise.
fDesktopHTML
Nonzero if the Active Desktop – View as Web Page option is enabled or zero otherwise.
fWin95Classic
Nonzero if the Classic Style option is enabled or zero otherwise.
fDontPrettyPath
Nonzero if the Allow All Uppercase Names option is enabled or zero otherwise.
fShowAttribCol
Nonzero if the Show File Attributes in Detail View option is enabled or zero otherwise.
fMapNetDrvBtn
Nonzero if the Show Map Network Drive Button in Toolbar option is enabled or zero otherwise.
fShowInfoTip
Nonzero if the Show Info Tips for Items in Folders & Desktop option is enabled or zero otherwise.
fHideIcons
Not used.
fRestFlags
Not used.

Version 4.71

SHFILEINFO

typedef struct _SHFILEINFO{ 
    HICON hIcon; 
    int   iIcon; 
    DWORD dwAttributes; 
    char  szDisplayName[MAX_PATH]; 
    char  szTypeName[80]; 
} SHFILEINFO; 
 

Contains information about a file object.

hIcon
Handle to the icon that represents the file.
iIcon
Index of the icon image within the system image list.
dwAttributes
Array of values that indicates the attributes of the file object. For information about these values, see the IShellFolder::GetAttributesOf method.
szDisplayName
String that contains the name of the file as it appears in the Windows shell, or the path and file name of the file that contains the icon representing the file.
szTypeName
String that describes the type of file.

This structure is used with the SHGetFileInfo function.

SHFILEOPSTRUCT

typedef struct _SHFILEOPSTRUCT{ 
    HWND         hwnd; 
    UINT         wFunc; 
    LPCSTR       pFrom; 
    LPCSTR       pTo; 
    FILEOP_FLAGS fFlags; 
    BOOL         fAnyOperationsAborted; 
    LPVOID       hNameMappings; 
    LPCSTR       lpszProgressTitle; 
} SHFILEOPSTRUCT, FAR *LPSHFILEOPSTRUCT; 
 

Contains information that the SHFileOperation function uses to perform file operations.

hwnd
Window handle to the dialog box to display information about the status of the file operation.
wFunc
Operation to perform. This member can be one of the following values:
FO_COPY Copies the files specified in the pFrom member to the location specified in the pTo member.
FO_DELET Deletes the files specified in pFrom. (pTo is ignored.)
FO_MOVE Moves the files specified in pFrom to the location specified in pTo.
FO_RENAME Renames the files specified in pFrom.
pFrom
Address of a buffer to specify one or more source file names. Multiple names must be null-separated. The list of names must be double null-terminated.
pTo
Address of a buffer to contain the name of the destination file or directory. The buffer can contain multiple destination file names if the fFlags member specifies FOF_MULTIDESTFILES. Multiple names must be null-separated. The list of names must be double null-terminated.
fFlags
Flags that control the file operation. This member can be a combination of the following flags:
FOF_ALLOWUNDO Preserve Undo information, if possible.
FOF_CONFIRMMOUSE Not currently implemented.
FOF_FILESONLY Perform the operation on files only if a wildcard file name (*.*) is specified.
FOF_MULTIDESTFILES The pTo member specifies multiple destination files (one for each source file) rather than one directory where all source files are to be deposited.
FOF_NOCONFIRMATION Respond with Yes to All for any dialog box that is displayed.
FOF_NOCONFIRMMKDIR Does not confirm the creation of a new directory if the operation requires one to be created.
FOF_NOCOPYSECURITYATTRIBS Version 4.71. Microsoft® Windows NT® only. The security attributes of the file will not be copied.
FOF_NOERRORUI No user interface will be displayed if an error occurs.
FOF_RENAMEONCOLLISION Give the file being operated on a new name in a move, copy, or rename operation if a file with the target name already exists.
FOF_SILENT Does not display a progress dialog box.
FOF_SIMPLEPROGRESS Displays a progress dialog box but does not show the file names.
FOF_WANTMAPPINGHANDLE If FOF_RENAMEONCOLLISION is specified, the hNameMappings member will be filled in if any files were renamed.
fAnyOperationsAborted
Value that receives TRUE if the user aborted any file operations before they were completed, or FALSE otherwise.
hNameMappings
Handle to a file name mapping object that contains an array of SHNAMEMAPPING structures. Each structure contains the old and new path names for each file that was moved, copied, or renamed. This member is used only if the fFlags member includes the FOF_WANTMAPPINGHANDLE flag. The handle must be freed by using the SHFreeNameMappings function.
lpszProgressTitle
Address of a string to use as the title of a progress dialog box. This member is used only if fFlags includes the FOF_SIMPLEPROGRESS flag.

If the pFrom or pTo members are unqualified names, the current directories are taken from the global current drive and directory settings as managed by the GetCurrentDirectory and SetCurrentDirectory functions.

© 1997 Microsoft Corporation. All rights reserved. Terms of Use.