Module: Windows::Shell

Defined in:
lib/windows/shell.rb

Constant Summary

CSIDL_DESKTOP =

CSIDL constants

0x0000
CSIDL_INTERNET =
0x0001
CSIDL_PROGRAMS =
0x0002
CSIDL_CONTROLS =
0x0003
CSIDL_PRINTERS =
0x0004
CSIDL_PERSONAL =
0x0005
CSIDL_FAVORITES =
0x0006
CSIDL_STARTUP =
0x0007
CSIDL_RECENT =
0x0008
CSIDL_SENDTO =
0x0009
CSIDL_BITBUCKET =
0x000a
CSIDL_STARTMENU =
0x000b
CSIDL_MYDOCUMENTS =
0x000c
CSIDL_MYMUSIC =
0x000d
CSIDL_MYVIDEO =
0x000e
CSIDL_DESKTOPDIRECTORY =
0x0010
CSIDL_DRIVES =
0x0011
CSIDL_NETWORK =
0x0012
CSIDL_NETHOOD =
0x0013
CSIDL_FONTS =
0x0014
CSIDL_TEMPLATES =
0x0015
CSIDL_COMMON_STARTMENU =
0x0016
CSIDL_COMMON_PROGRAMS =
0X0017
CSIDL_COMMON_STARTUP =
0x0018
CSIDL_COMMON_FAVORITES =
0x001f
CSIDL_COMMON_DESKTOPDIRECTORY =
0x0019
CSIDL_APPDATA =
0x001a
CSIDL_PRINTHOOD =
0x001b
CSIDL_LOCAL_APPDATA =
0x001c
CSIDL_ALTSTARTUP =
0x001d
CSIDL_COMMON_ALTSTARTUP =
0x001e
CSIDL_INTERNET_CACHE =
0x0020
CSIDL_COOKIES =
0x0021
CSIDL_HISTORY =
0x0022
CSIDL_COMMON_APPDATA =
0x0023
CSIDL_WINDOWS =
0x0024
CSIDL_SYSTEM =
0x0025
CSIDL_PROGRAM_FILES =
0x0026
CSIDL_MYPICTURES =
0x0027
CSIDL_PROFILE =
0x0028
CSIDL_SYSTEMX86 =
0x0029
CSIDL_PROGRAM_FILESX86 =
0x002a
CSIDL_PROGRAM_FILES_COMMON =
0x002b
CSIDL_PROGRAM_FILES_COMMONX86 =
0x002c
CSIDL_COMMON_TEMPLATES =
0x002d
CSIDL_COMMON_DOCUMENTS =
0x002e
CSIDL_CONNECTIONS =
0x0031
CSIDL_COMMON_MUSIC =
0x0035
CSIDL_COMMON_PICTURES =
0x0036
CSIDL_COMMON_VIDEO =
0x0037
CSIDL_RESOURCES =
0x0038
CSIDL_RESOURCES_LOCALIZED =
0x0039
0x003a
CSIDL_CDBURN_AREA =
0x003b
CSIDL_COMMON_ADMINTOOLS =
0x002f
CSIDL_ADMINTOOLS =
0x0030
S_FALSE =

Return codes

1
E_FAIL =
2147500037
E_INVALIDARG =
2147483651
SHGFP_TYPE_CURRENT =

Flags

0
SHGFP_TYPE_DEFAULT =
1
FO_MOVE =

Shell file operations

0x0001
FO_COPY =
0x0002
FO_DELETE =
0x0003
FO_RENAME =
0x0004
FOF_MULTIDESTFILES =
0x0001
FOF_CONFIRMMOUSE =
0x0002
FOF_SILENT =

Don't create progress/report

0x0004
FOF_RENAMEONCOLLISION =
0x0008
FOF_NOCONFIRMATION =
0x0010
FOF_WANTMAPPINGHANDLE =

Don't prompt the user. Fill in SHFILEOPSTRUCT.hNameMappings

0x0020
FOF_ALLOWUNDO =
0x0040
FOF_FILESONLY =
0x0080
FOF_SIMPLEPROGRESS =
0x0100
FOF_NOCONFIRMMKDIR =
0x0200
FOF_NOERRORUI =
0x0400
FOF_NOCOPYSECURITYATTRIBS =
0x0800
FOF_NORECURSION =
0x1000
FOF_NO_CONNECTED_ELEMENTS =
0x2000
FOF_WANTNUKEWARNING =
0x4000
FOF_NORECURSEREPARSE =

On ., do only files Means don't show names of files Don't confirm making any needed dirs Don't put up error UI Don't copy NT file Sec. Attributes Don't recurse into directories. Don't operate on connected elements During delete op, warn if nuking Treat reparse points as objects

0x8000
SE_ERR_FNF =

Shell execute error codes

2
SE_ERR_PNF =
3
SE_ERR_ACCESSDENIED =
5
SE_ERR_OOM =

file not found path not found access denied out of memory

8
SE_ERR_DLLNOTFOUND =
32
SE_ERR_SHARE =
26
SE_ERR_ASSOCINCOMPLETE =
27
SE_ERR_DDETIMEOUT =
28
SE_ERR_DDEFAIL =
29
SE_ERR_DDEBUSY =
30
SE_ERR_NOASSOC =
31
SHGNLI_PIDL =

Shell link constants

0x000000001
SHGNLI_PREFIXNAME =
0x000000002
SHGNLI_NOUNIQUE =
0x000000004
SHGNLI_NOLNK =

pszLinkTo is a pidl Make name "Shortcut to xxx" don't do the unique name generation don't add ".lnk" extension

0x000000008
SHGFI_ICON =

File information constants

0x000000100
SHGFI_DISPLAYNAME =
0x000000200
SHGFI_TYPENAME =
0x000000400
SHGFI_ATTRIBUTES =
0x000000800
SHGFI_ICONLOCATION =
0x000001000
SHGFI_EXETYPE =
0x000002000
SHGFI_SYSICONINDEX =
0x000004000
SHGFI_LINKOVERLAY =
0x000008000
SHGFI_SELECTED =
0x000010000
SHGFI_ATTR_SPECIFIED =
0x000020000
SHGFI_LARGEICON =
0x000000000
SHGFI_SMALLICON =
0x000000001
SHGFI_OPENICON =
0x000000002
SHGFI_SHELLICONSIZE =
0x000000004
SHGFI_PIDL =
0x000000008
SHGFI_USEFILEATTRIBUTES =
0x000000010
SHGFI_ADDOVERLAYS =
0x000000020
SHGFI_OVERLAYINDEX =

get icon get display name get type name get attributes get icon location return exe type get system icon index put a link overlay on icon show icon in selected state get only specified attributes get large icon get small icon get open icon get shell size icon pszPath is a pidl use passed dwFileAttribute apply the appropriate overlays Get the index of the overlay

0x000000040