shell – Shell functionality
Wrappers around standard functionality from the semi-independent Windows Shell
subsystem which powers the desktop, shortcuts, special folders, property sheets &c.
Implemented so far:
Functions
-
shell.shortcut(source=<Unset>)[source]
-
shell.properties(source)[source]
Classes
-
class shell.Shortcut(filepath=<Unset>, **kwargs)[source]
Constants
-
shell.CSIDL = <Constants: {'COMMON_ADMINTOOLS': 47, 'MYMUSIC': 13, 'NETWORK': 18, 'COMMON_TEMPLATES': 45, 'WINDOWS': 36, 'DESKTOPDIRECTORY': 16, 'SENDTO': 9, 'COMMON_FAVORITES': 31, 'COMMON_PROGRAMS': 23, 'DESKTOP': 0, 'PROGRAM_FILES': 38, 'PROGRAM_FILES_COMMONX86': 44, 'COMMON_DESKTOPDIRECTORY': 25, 'COMMON_STARTMENU': 22, 'TEMPLATES': 21, 'COMMON_STARTUP': 24, 'SYSTEMX86': 41, 'RESOURCES_LOCALIZED': 57, 'PROGRAM_FILESX86': 42, 'COMMON_VIDEO': 55, 'CONNECTIONS': 49, 'COMMON_PICTURES': 54, 'COMMON_APPDATA': 35, 'FAVORITES': 6, 'PRINTERS': 4, 'RECENT': 8, 'COMPUTERSNEARME': 61, 'ALTSTARTUP': 29, 'COMMON_OEM_LINKS': 58, 'BITBUCKET': 10, 'COMMON_ALTSTARTUP': 30, 'MYPICTURES': 39, 'FONTS': 20, 'MYVIDEO': 14, 'DRIVES': 17, 'MYDOCUMENTS': 12, 'NETHOOD': 19, 'ADMINTOOLS': 48, 'INTERNET': 1, 'PROGRAM_FILES_COMMON': 43, 'RESOURCES': 56, 'HISTORY': 34, 'PROFILE': 40, 'COOKIES': 33, 'PRINTHOOD': 27, 'APPDATA': 26, 'PROGRAMS': 2, 'PERSONAL': 5, 'STARTUP': 7, 'SYSTEM': 37, 'CONTROLS': 3, 'LOCAL_APPDATA': 28, 'CDBURN_AREA': 59, 'INTERNET_CACHE': 32, 'COMMON_MUSIC': 53, 'STARTMENU': 11, 'COMMON_DOCUMENTS': 46}>
Name |
Val |
Win32 |
DESKTOP |
0x000 |
CSIDL_DESKTOP |
INTERNET |
0x001 |
CSIDL_INTERNET |
PROGRAMS |
0x002 |
CSIDL_PROGRAMS |
CONTROLS |
0x003 |
CSIDL_CONTROLS |
PRINTERS |
0x004 |
CSIDL_PRINTERS |
PERSONAL |
0x005 |
CSIDL_PERSONAL |
FAVORITES |
0x006 |
CSIDL_FAVORITES |
STARTUP |
0x007 |
CSIDL_STARTUP |
RECENT |
0x008 |
CSIDL_RECENT |
SENDTO |
0x009 |
CSIDL_SENDTO |
BITBUCKET |
0x00A |
CSIDL_BITBUCKET |
STARTMENU |
0x00B |
CSIDL_STARTMENU |
MYDOCUMENTS |
0x00C |
CSIDL_MYDOCUMENTS |
MYMUSIC |
0x00D |
CSIDL_MYMUSIC |
MYVIDEO |
0x00E |
CSIDL_MYVIDEO |
DESKTOPDIRECTORY |
0x010 |
CSIDL_DESKTOPDIRECTORY |
DRIVES |
0x011 |
CSIDL_DRIVES |
NETWORK |
0x012 |
CSIDL_NETWORK |
NETHOOD |
0x013 |
CSIDL_NETHOOD |
FONTS |
0x014 |
CSIDL_FONTS |
TEMPLATES |
0x015 |
CSIDL_TEMPLATES |
COMMON_STARTMENU |
0x016 |
CSIDL_COMMON_STARTMENU |
COMMON_PROGRAMS |
0x017 |
CSIDL_COMMON_PROGRAMS |
COMMON_STARTUP |
0x018 |
CSIDL_COMMON_STARTUP |
COMMON_DESKTOPDIRECTORY |
0x019 |
CSIDL_COMMON_DESKTOPDIRECTORY |
APPDATA |
0x01A |
CSIDL_APPDATA |
PRINTHOOD |
0x01B |
CSIDL_PRINTHOOD |
LOCAL_APPDATA |
0x01C |
CSIDL_LOCAL_APPDATA |
ALTSTARTUP |
0x01D |
CSIDL_ALTSTARTUP |
COMMON_ALTSTARTUP |
0x01E |
CSIDL_COMMON_ALTSTARTUP |
COMMON_FAVORITES |
0x01F |
CSIDL_COMMON_FAVORITES |
INTERNET_CACHE |
0x020 |
CSIDL_INTERNET_CACHE |
COOKIES |
0x021 |
CSIDL_COOKIES |
HISTORY |
0x022 |
CSIDL_HISTORY |
COMMON_APPDATA |
0x023 |
CSIDL_COMMON_APPDATA |
WINDOWS |
0x024 |
CSIDL_WINDOWS |
SYSTEM |
0x025 |
CSIDL_SYSTEM |
PROGRAM_FILES |
0x026 |
CSIDL_PROGRAM_FILES |
MYPICTURES |
0x027 |
CSIDL_MYPICTURES |
PROFILE |
0x028 |
CSIDL_PROFILE |
SYSTEMX86 |
0x029 |
CSIDL_SYSTEMX86 |
PROGRAM_FILESX86 |
0x02A |
CSIDL_PROGRAM_FILESX86 |
PROGRAM_FILES_COMMON |
0x02B |
CSIDL_PROGRAM_FILES_COMMON |
PROGRAM_FILES_COMMONX86 |
0x02C |
CSIDL_PROGRAM_FILES_COMMONX86 |
COMMON_TEMPLATES |
0x02D |
CSIDL_COMMON_TEMPLATES |
COMMON_DOCUMENTS |
0x02E |
CSIDL_COMMON_DOCUMENTS |
COMMON_ADMINTOOLS |
0x02F |
CSIDL_COMMON_ADMINTOOLS |
ADMINTOOLS |
0x030 |
CSIDL_ADMINTOOLS |
CONNECTIONS |
0x031 |
CSIDL_CONNECTIONS |
COMMON_MUSIC |
0x035 |
CSIDL_COMMON_MUSIC |
COMMON_PICTURES |
0x036 |
CSIDL_COMMON_PICTURES |
COMMON_VIDEO |
0x037 |
CSIDL_COMMON_VIDEO |
RESOURCES |
0x038 |
CSIDL_RESOURCES |
RESOURCES_LOCALIZED |
0x039 |
CSIDL_RESOURCES_LOCALIZED |
COMMON_OEM_LINKS |
0x03A |
CSIDL_COMMON_OEM_LINKS |
CDBURN_AREA |
0x03B |
CSIDL_CDBURN_AREA |
COMPUTERSNEARME |
0x03D |
CSIDL_COMPUTERSNEARME |
-
shell.STGM = <Constants: {'NOSCRATCH': 1048576, 'SHARE_DENY_NONE': 64, 'FAILIFTHERE': 0, 'SHARE_EXCLUSIVE': 16, 'TRANSACTED': 65536, 'READ': 0, 'DELETEONRELEASE': 67108864, 'CONVERT': 131072, 'DIRECT': 0, 'PRIORITY': 262144, 'READWRITE': 2, 'WRITE': 1, 'SHARE_DENY_WRITE': 32, 'SIMPLE': 134217728, 'NOSNAPSHOT': 2097152, 'SHARE_DENY_READ': 48, 'CREATE': 4096}>
Name |
Val |
Win32 |
FAILIFTHERE |
0x00000000 |
STGM_READ |
READ |
0x00000000 |
STGM_READ |
DIRECT |
0x00000000 |
STGM_READ |
WRITE |
0x00000001 |
STGM_WRITE |
READWRITE |
0x00000002 |
STGM_READWRITE |
SHARE_EXCLUSIVE |
0x00000010 |
STGM_SHARE_EXCLUSIVE |
SHARE_DENY_WRITE |
0x00000020 |
STGM_SHARE_DENY_WRITE |
SHARE_DENY_READ |
0x00000030 |
STGM_SHARE_DENY_READ |
SHARE_DENY_NONE |
0x00000040 |
STGM_SHARE_DENY_NONE |
CREATE |
0x00001000 |
STGM_CREATE |
TRANSACTED |
0x00010000 |
STGM_TRANSACTED |
CONVERT |
0x00020000 |
STGM_CONVERT |
PRIORITY |
0x00040000 |
STGM_PRIORITY |
NOSCRATCH |
0x00100000 |
STGM_NOSCRATCH |
NOSNAPSHOT |
0x00200000 |
STGM_NOSNAPSHOT |
DELETEONRELEASE |
0x04000000 |
STGM_DELETEONRELEASE |
SIMPLE |
0x08000000 |
STGM_SIMPLE |
-
shell.STGFMT = <Constants: {'STORAGE': 0, 'DOCFILE': 5, 'FILE': 3, 'DOCUMENT': 0, 'ANY': 4, 'NATIVE': 1}>
Name |
Val |
Win32 |
STORAGE |
0x000 |
STGFMT_STORAGE |
DOCUMENT |
0x000 |
STGFMT_STORAGE |
NATIVE |
0x001 |
STGFMT_NATIVE |
FILE |
0x003 |
STGFMT_FILE |
ANY |
0x004 |
STGFMT_ANY |
DOCFILE |
0x005 |
STGFMT_DOCFILE |
-
shell.FMTID = <Constants: {'SummaryInformation': IID('{F29F85E0-4FF9-1068-AB91-08002B27B3D9}'), 'DocSummaryInformation': IID('{D5CDD502-2E9C-101B-9397-08002B2CF9AE}'), 'Displaced': IID('{9B174B33-40FF-11D2-A27E-00C04FC30871}'), 'ImageProperties': IID('{14B81DA1-0135-4D31-96D9-6CBFC9671A99}'), 'Briefcase': IID('{328D8B21-7729-4BFC-954C-902B329D56B0}'), 'Intshcut': IID('{000214A0-0000-0000-C000-000000000046}'), 'Misc': IID('{9B174B34-40FF-11D2-A27E-00C04FC30871}'), 'MediaFileSummaryInformation': IID('{64440492-4C8B-11D1-8B70-080036B11A03}'), 'Storage': IID('{B725F130-47EF-101A-A5F1-02608C9EEBAC}'), 'Volume': IID('{9B174B35-40FF-11D2-A27E-00C04FC30871}'), 'ImageSummaryInformation': IID('{6444048F-4C8B-11D1-8B70-080036B11A03}'), 'UserDefinedProperties': IID('{D5CDD505-2E9C-101B-9397-08002B2CF9AE}'), 'Query': IID('{49691C90-7E17-101A-A91C-08002B2ECDA9}'), 'WebView': IID('{F2275480-F782-4291-BD94-F13693513AEC}'), 'ShellDetails': IID('{28636AA6-953D-11D2-B5D6-00C04FD918D0}'), 'InternetSite': IID('{000214A1-0000-0000-C000-000000000046}'), 'AudioSummaryInformation': IID('{64440490-4C8B-11D1-8B70-080036B11A03}')}>
Name |
Val |
Win32 |
Intshcut |
{000214A0-0000-0000-C000-000000000046} |
Intshcut |
InternetSite |
{000214A1-0000-0000-C000-000000000046} |
InternetSite |
ImageProperties |
{14B81DA1-0135-4D31-96D9-6CBFC9671A99} |
ImageProperties |
ShellDetails |
{28636AA6-953D-11D2-B5D6-00C04FD918D0} |
ShellDetails |
Briefcase |
{328D8B21-7729-4BFC-954C-902B329D56B0} |
Briefcase |
Query |
{49691C90-7E17-101A-A91C-08002B2ECDA9} |
Query |
ImageSummaryInformation |
{6444048F-4C8B-11D1-8B70-080036B11A03} |
ImageSummaryInformation |
AudioSummaryInformation |
{64440490-4C8B-11D1-8B70-080036B11A03} |
AudioSummaryInformation |
MediaFileSummaryInformation |
{64440492-4C8B-11D1-8B70-080036B11A03} |
MediaFileSummaryInformation |
Displaced |
{9B174B33-40FF-11D2-A27E-00C04FC30871} |
Displaced |
Misc |
{9B174B34-40FF-11D2-A27E-00C04FC30871} |
Misc |
Volume |
{9B174B35-40FF-11D2-A27E-00C04FC30871} |
Volume |
Storage |
{B725F130-47EF-101A-A5F1-02608C9EEBAC} |
Storage |
DocSummaryInformation |
{D5CDD502-2E9C-101B-9397-08002B2CF9AE} |
FMTID_DocSummaryInformation |
UserDefinedProperties |
{D5CDD505-2E9C-101B-9397-08002B2CF9AE} |
FMTID_UserDefinedProperties |
WebView |
{F2275480-F782-4291-BD94-F13693513AEC} |
WebView |
SummaryInformation |
{F29F85E0-4FF9-1068-AB91-08002B27B3D9} |
SummaryInformation |
-
shell.PIDSI = <Constants: {'PAGECOUNT': 14, 'REVNUMBER': 9, 'LASTAUTHOR': 8, 'SUBJECT': 3, 'CREATE_DTM': 12, 'AUTHOR': 4, 'CHARCOUNT': 16, 'APPNAME': 18, 'WORDCOUNT': 15, 'COMMENTS': 6, 'TITLE': 2, 'TEMPLATE': 7, 'LASTSAVE_DTM': 13, 'KEYWORDS': 5, 'LASTPRINTED': 11, 'DOC_SECURITY': 19, 'THUMBNAIL': 17, 'EDITTIME': 10}>
Name |
Val |
Win32 |
TITLE |
0x002 |
PIDSI_TITLE |
SUBJECT |
0x003 |
PIDSI_SUBJECT |
AUTHOR |
0x004 |
PIDSI_AUTHOR |
KEYWORDS |
0x005 |
PIDSI_KEYWORDS |
COMMENTS |
0x006 |
PIDSI_COMMENTS |
TEMPLATE |
0x007 |
PIDSI_TEMPLATE |
LASTAUTHOR |
0x008 |
PIDSI_LASTAUTHOR |
REVNUMBER |
0x009 |
PIDSI_REVNUMBER |
EDITTIME |
0x00A |
PIDSI_EDITTIME |
LASTPRINTED |
0x00B |
PIDSI_LASTPRINTED |
CREATE_DTM |
0x00C |
PIDSI_CREATE_DTM |
LASTSAVE_DTM |
0x00D |
PIDSI_LASTSAVE_DTM |
PAGECOUNT |
0x00E |
PIDSI_PAGECOUNT |
WORDCOUNT |
0x00F |
PIDSI_WORDCOUNT |
CHARCOUNT |
0x010 |
PIDSI_CHARCOUNT |
THUMBNAIL |
0x011 |
PIDSI_THUMBNAIL |
APPNAME |
0x012 |
PIDSI_APPNAME |
DOC_SECURITY |
0x013 |
PIDSI_DOC_SECURITY |
-
shell.PIDDSI = <Constants: {'CATEGORY': 2, 'SCALE': 11, 'SLIDECOUNT': 7, 'MMCLIPCOUNT': 10, 'LINKSDIRTY': 16, 'NOTECOUNT': 8, 'COMPANY': 15, 'HIDDENCOUNT': 9, 'PARCOUNT': 6, 'HEADINGPAIR': 12, 'BYTECOUNT': 4, 'LINECOUNT': 5, 'PRESFORMAT': 3, 'MANAGER': 14, 'DOCPARTS': 13}>
Name |
Val |
Win32 |
CATEGORY |
0x002 |
PIDDSI_CATEGORY |
PRESFORMAT |
0x003 |
PIDDSI_PRESFORMAT |
BYTECOUNT |
0x004 |
PIDDSI_BYTECOUNT |
LINECOUNT |
0x005 |
PIDDSI_LINECOUNT |
PARCOUNT |
0x006 |
PIDDSI_PARCOUNT |
SLIDECOUNT |
0x007 |
PIDDSI_SLIDECOUNT |
NOTECOUNT |
0x008 |
PIDDSI_NOTECOUNT |
HIDDENCOUNT |
0x009 |
PIDDSI_HIDDENCOUNT |
MMCLIPCOUNT |
0x00A |
PIDDSI_MMCLIPCOUNT |
SCALE |
0x00B |
PIDDSI_SCALE |
HEADINGPAIR |
0x00C |
PIDDSI_HEADINGPAIR |
DOCPARTS |
0x00D |
PIDDSI_DOCPARTS |
MANAGER |
0x00E |
PIDDSI_MANAGER |
COMPANY |
0x00F |
PIDDSI_COMPANY |
LINKSDIRTY |
0x010 |
PIDDSI_LINKSDIRTY |
-
shell.PIDMSI = <Constants: {'STATUS': 7, 'RATING': 9, 'COPYRIGHT': 11, 'SEQUENCE_NO': 5, 'PROJECT': 6, 'SOURCE': 4, 'PRODUCTION': 10, 'EDITOR': 2, 'OWNER': 8, 'SUPPLIER': 3}>
Name |
Val |
Win32 |
EDITOR |
0x002 |
PIDMSI_EDITOR |
SUPPLIER |
0x003 |
PIDMSI_SUPPLIER |
SOURCE |
0x004 |
PIDMSI_SOURCE |
SEQUENCE_NO |
0x005 |
PIDMSI_SEQUENCE_NO |
PROJECT |
0x006 |
PIDMSI_PROJECT |
STATUS |
0x007 |
PIDMSI_STATUS |
OWNER |
0x008 |
PIDMSI_OWNER |
RATING |
0x009 |
PIDMSI_RATING |
PRODUCTION |
0x00A |
PIDMSI_PRODUCTION |
COPYRIGHT |
0x00B |
PIDMSI_COPYRIGHT |
-
shell.PIDASI = <Constants: {'STREAM_NAME': 9, 'COMPRESSION': 10, 'FORMAT': 2, 'AVG_DATA_RATE': 4, 'CHANNEL_COUNT': 7, 'SAMPLE_SIZE': 6, 'TIMELENGTH': 3, 'SAMPLE_RATE': 5, 'STREAM_NUMBER': 8}>
Name |
Val |
Win32 |
FORMAT |
0x002 |
PIDASI_FORMAT |
TIMELENGTH |
0x003 |
PIDASI_TIMELENGTH |
AVG_DATA_RATE |
0x004 |
PIDASI_AVG_DATA_RATE |
SAMPLE_RATE |
0x005 |
PIDASI_SAMPLE_RATE |
SAMPLE_SIZE |
0x006 |
PIDASI_SAMPLE_SIZE |
CHANNEL_COUNT |
0x007 |
PIDASI_CHANNEL_COUNT |
STREAM_NUMBER |
0x008 |
PIDASI_STREAM_NUMBER |
STREAM_NAME |
0x009 |
PIDASI_STREAM_NAME |
COMPRESSION |
0x00A |
PIDASI_COMPRESSION |
-
shell.PID_VOLUME = <Constants: {'CAPACITY': 3, 'FREE': 2, 'FILESYSTEM': 4}>
Name |
Val |
Win32 |
FREE |
0x002 |
PID_VOLUME_FREE |
CAPACITY |
0x003 |
PID_VOLUME_CAPACITY |
FILESYSTEM |
0x004 |
PID_VOLUME_FILESYSTEM |
-
shell.SHCONTF = <Constants: {'FOLDERS': 32, 'STORAGE': 2048, 'NONFOLDERS': 64, 'SHAREABLE': 1024, 'INCLUDEHIDDEN': 128, 'NETPRINTERSRCH': 512, 'INIT_ON_FIRST_NEXT': 256}>
Name |
Val |
Win32 |
FOLDERS |
0x0020 |
SHCONTF_FOLDERS |
NONFOLDERS |
0x0040 |
SHCONTF_NONFOLDERS |
INCLUDEHIDDEN |
0x0080 |
SHCONTF_INCLUDEHIDDEN |
INIT_ON_FIRST_NEXT |
0x0100 |
SHCONTF_INIT_ON_FIRST_NEXT |
NETPRINTERSRCH |
0x0200 |
SHCONTF_NETPRINTERSRCH |
SHAREABLE |
0x0400 |
SHCONTF_SHAREABLE |
STORAGE |
0x0800 |
SHCONTF_STORAGE |
-
shell.SHGDN = <Constants: {'INFOLDER': 1, 'NORMAL': 0, 'INCLUDE_NONFILESYS': 8192, 'FORPARSING': 32768, 'FORADDRESSBAR': 16384, 'FOREDITING': 4096}>
Name |
Val |
Win32 |
NORMAL |
0x0000 |
SHGDN_NORMAL |
INFOLDER |
0x0001 |
SHGDN_INFOLDER |
FOREDITING |
0x1000 |
SHGDN_FOREDITING |
INCLUDE_NONFILESYS |
0x2000 |
SHGDN_INCLUDE_NONFILESYS |
FORADDRESSBAR |
0x4000 |
SHGDN_FORADDRESSBAR |
FORPARSING |
0x8000 |
SHGDN_FORPARSING |
-
shell.SLGP = <Constants: {'RAWPATH': 4, 'SHORTPATH': 1, 'UNCPRIORITY': 2}>
Name |
Val |
Win32 |
SHORTPATH |
0x001 |
SLGP_SHORTPATH |
UNCPRIORITY |
0x002 |
SLGP_UNCPRIORITY |
RAWPATH |
0x004 |
SLGP_RAWPATH |
Exceptions
-
exception shell.x_shell(errno=None, errctx=None, errmsg=None)[source]
References
See also
- cookbook/shell
- Cookbook examples of using the shell module