19#ifndef __WINE_SHLOBJ_H
20#define __WINE_SHLOBJ_H
30#ifdef WINE_NO_UNICODE_MACROS
86#define FCS_READ 0x00000001
87#define FCS_FORCEWRITE 0x00000002
89#define FCSM_ICONFILE 0x00000010
152#define SHCLSIDFromString WINELIB_NAME_AW(SHCLSIDFromString)
200#define SHGetFolderPathAndSubDir WINELIB_NAME_AW(SHGetFolderPathAndSubDir)
216#define SHSetFolderPath WINELIB_NAME_AW(SHSetFolderPath)
228#define PathIsSlow WINELIB_NAME_AW(PathIsSlow)
244#define SHGetPathFromIDList WINELIB_NAME_AW(SHGetPathFromIDList)
280#define SHPathPrepareForWrite WINELIB_NAME_AW(SHPathPrepareForWrite)
302#define SHUpdateImage WINELIB_NAME_AW(SHUpdateImage)
325#define KF_FLAG_DEFAULT_PATH 0x00000400
327#define SHFMT_ERROR 0xFFFFFFFFL
328#define SHFMT_CANCEL 0xFFFFFFFEL
329#define SHFMT_NOFORMAT 0xFFFFFFFDL
332#define SHFMT_ID_DEFAULT 0xFFFF
333#define SHFMT_OPT_FULL 1
334#define SHFMT_OPT_SYSONLY 2
337#define SHPPFW_NONE 0x00000000
338#define SHPPFW_DIRCREATE 0x00000001
339#define SHPPFW_DEFAULT SHPPFW_DIRCREATE
340#define SHPPFW_ASKDIRCREATE 0x00000002
341#define SHPPFW_IGNOREFILENAME 0x00000004
342#define SHPPFW_NOWRITECHECK 0x00000008
343#define SHPPFW_MEDIACHECKONLY 0x00000010
346#define SHOP_PRINTERNAME 0x01
347#define SHOP_FILEPATH 0x02
348#define SHOP_VOLUMEGUID 0x04
366#define PCS_FATAL 0x80000000
367#define PCS_REPLACEDCHAR 0x00000001
368#define PCS_REMOVEDCHAR 0x00000002
369#define PCS_TRUNCATED 0x00000004
370#define PCS_PATHTOOLONG 0x00000008
374#if (_WIN32_WINNT >= _WIN32_WINNT_WINXP) && (_WIN32_WINNT <= _WIN32_WINNT_WS03)
398#define SHOpenPropSheet WINELIB_NAME_AW(SHOpenPropSheet)
428#define CFSTR_SHELLIDLISTA "Shell IDList Array"
429#define CFSTR_SHELLIDLISTOFFSETA "Shell Object Offsets"
430#define CFSTR_NETRESOURCESA "Net Resource"
432#define CFSTR_FILEDESCRIPTORA "FileGroupDescriptor"
434#define CFSTR_FILECONTENTSA "FileContents"
435#define CFSTR_FILENAMEA "FileName"
436#define CFSTR_FILENAMEMAPA "FileNameMap"
437#define CFSTR_PRINTERGROUPA "PrinterFriendlyName"
438#define CFSTR_SHELLURLA "UniformResourceLocator"
439#define CFSTR_INETURLA CFSTR_SHELLURLA
440#define CFSTR_PREFERREDDROPEFFECTA "Preferred DropEffect"
441#define CFSTR_PERFORMEDDROPEFFECTA "Performed DropEffect"
442#define CFSTR_PASTESUCCEEDEDA "Paste Succeeded"
443#define CFSTR_INDRAGLOOPA "InShellDragLoop"
444#define CFSTR_DRAGCONTEXTA "DragContext"
445#define CFSTR_MOUNTEDVOLUMEA "MountedVolume"
446#define CFSTR_PERSISTEDDATAOBJECTA "PersistedDataObject"
447#define CFSTR_TARGETCLSIDA "TargetCLSID"
448#define CFSTR_AUTOPLAY_SHELLIDLISTSA "Autoplay Enumerated IDList Array"
449#define CFSTR_LOGICALPERFORMEDDROPEFFECTA "Logical Performed DropEffect"
452# define CFSTR_SHELLIDLISTW \
453 (const WCHAR []){ 'S','h','e','l','l',' ','I','D','L','i','s','t',' ','A','r','r','a','y',0 }
454# define CFSTR_SHELLIDLISTOFFSETW \
455 (const WCHAR []){ 'S','h','e','l','l',' ','O','b','j','e','c','t',' ','O','f','f','s','e','t','s',0 }
456# define CFSTR_NETRESOURCESW \
457 (const WCHAR []){ 'N','e','t',' ','R','e','s','o','u','r','c','e',0 }
458# define CFSTR_FILEDESCRIPTORW \
459 (const WCHAR []){ 'F','i','l','e','G','r','o','u','p','D','e','s','c','r','i','p','t','o','r','W',0 }
460# define CFSTR_FILECONTENTSW \
461 (const WCHAR []){ 'F','i','l','e','C','o','n','t','e','n','t','s',0 }
462# define CFSTR_FILENAMEW \
463 (const WCHAR []){ 'F','i','l','e','N','a','m','e','W',0 }
464# define CFSTR_FILENAMEMAPW \
465 (const WCHAR []){ 'F','i','l','e','N','a','m','e','M','a','p','W',0 }
466# define CFSTR_PRINTERGROUPW \
467 (const WCHAR []){ 'P','r','i','n','t','e','r','F','r','i','e','n','d','l','y','N','a','m','e',0 }
468# define CFSTR_SHELLURLW \
469 (const WCHAR []){ 'U','n','i','f','o','r','m','R','e','s','o','u','r','c','e','L','o','c','a','t','o','r',0 }
470# define CFSTR_INETURLW \
471 (const WCHAR []){ 'U','n','i','f','o','r','m','R','e','s','o','u','r','c','e','L','o','c','a','t','o','r','W',0 }
472# define CFSTR_PREFERREDDROPEFFECTW \
473 (const WCHAR []){ 'P','r','e','f','e','r','r','e','d',' ','D','r','o','p','E','f','f','e','c','t',0 }
474# define CFSTR_PERFORMEDDROPEFFECTW \
475 (const WCHAR []){ 'P','e','r','f','o','r','m','e','d',' ','D','r','o','p','E','f','f','e','c','t',0 }
476# define CFSTR_PASTESUCCEEDEDW \
477 (const WCHAR []){ 'P','a','s','t','e',' ','S','u','c','c','e','e','d','e','d',0 }
478# define CFSTR_INDRAGLOOPW \
479 (const WCHAR []){ 'I','n','S','h','e','l','l','D','r','a','g','L','o','o','p',0 }
480# define CFSTR_DRAGCONTEXTW \
481 (const WCHAR []){ 'D','r','a','g','C','o','n','t','e','x','t',0 }
482# define CFSTR_MOUNTEDVOLUMEW \
483 (const WCHAR []){ 'M','o','u','n','t','e','d','V','o','l','u','m','e',0 }
484# define CFSTR_PERSISTEDDATAOBJECTW \
485 (const WCHAR []){ 'P','e','r','s','i','s','t','e','d','D','a','t','a','O','b','j','e','c','t',0 }
486# define CFSTR_TARGETCLSIDW \
487 (const WCHAR []){ 'T','a','r','g','e','t','C','L','S','I','D',0 }
488# define CFSTR_AUTOPLAY_SHELLIDLISTSW \
489 (const WCHAR []){ 'A','u','t','o','p','l','a','y',' ','E','n','u','m','e','r','a','t','e','d',\
490 ' ','I','D','L','i','s','t',' ','A','r','r','a','y',0 }
491# define CFSTR_LOGICALPERFORMEDDROPEFFECTW \
492 (const WCHAR []){ 'L','o','g','i','c','a','l',' ','P','e','r','f','o','r','m','e','d',\
493 ' ','D','r','o','p','E','f','f','e','c','t',0 }
494#elif defined(_MSC_VER)
495# define CFSTR_SHELLIDLISTW L"Shell IDList Array"
496# define CFSTR_SHELLIDLISTOFFSETW L"Shell Object Offsets"
497# define CFSTR_NETRESOURCESW L"Net Resource"
498# define CFSTR_FILEDESCRIPTORW L"FileGroupDescriptorW"
499# define CFSTR_FILECONTENTSW L"FileContents"
500# define CFSTR_FILENAMEW L"FileNameW"
501# define CFSTR_FILENAMEMAPW L"FileNameMapW"
502# define CFSTR_PRINTERGROUPW L"PrinterFriendlyName"
503# define CFSTR_SHELLURLW L"UniformResourceLocator"
504# define CFSTR_INETURLW L"UniformResourceLocatorW"
505# define CFSTR_PREFERREDDROPEFFECTW L"Preferred DropEffect"
506# define CFSTR_PERFORMEDDROPEFFECTW L"Performed DropEffect"
507# define CFSTR_PASTESUCCEEDEDW L"Paste Succeeded"
508# define CFSTR_INDRAGLOOPW L"InShellDragLoop"
509# define CFSTR_DRAGCONTEXTW L"DragContext"
510# define CFSTR_MOUNTEDVOLUMEW L"MountedVolume"
511# define CFSTR_PERSISTEDDATAOBJECTW L"PersistedDataObject"
512# define CFSTR_TARGETCLSIDW L"TargetCLSID"
513# define CFSTR_AUTOPLAY_SHELLIDLISTSW L"Autoplay Enumerated IDList Array"
514# define CFSTR_LOGICALPERFORMEDDROPEFFECTW L"Logical Performed DropEffect"
517 {
'S',
'h',
'e',
'l',
'l',
' ',
'I',
'D',
'L',
'i',
's',
't',
' ',
'A',
'r',
'r',
'a',
'y',0 };
519 {
'S',
'h',
'e',
'l',
'l',
' ',
'O',
'b',
'j',
'e',
'c',
't',
' ',
'O',
'f',
'f',
's',
'e',
't',
's',0 };
521 {
'N',
'e',
't',
' ',
'R',
'e',
's',
'o',
'u',
'r',
'c',
'e',0 };
523 {
'F',
'i',
'l',
'e',
'G',
'r',
'o',
'u',
'p',
'D',
'e',
's',
'c',
'r',
'i',
'p',
't',
'o',
'r',
'W',0 };
525 {
'F',
'i',
'l',
'e',
'C',
'o',
'n',
't',
'e',
'n',
't',
's',0 };
527 {
'F',
'i',
'l',
'e',
'N',
'a',
'm',
'e',
'W',0 };
529 {
'F',
'i',
'l',
'e',
'N',
'a',
'm',
'e',
'M',
'a',
'p',
'W',0 };
531 {
'P',
'r',
'i',
'n',
't',
'e',
'r',
'F',
'r',
'i',
'e',
'n',
'd',
'l',
'y',
'N',
'a',
'm',
'e',0 };
533 {
'U',
'n',
'i',
'f',
'o',
'r',
'm',
'R',
'e',
's',
'o',
'u',
'r',
'c',
'e',
'L',
'o',
'c',
'a',
't',
'o',
'r',0 };
535 {
'U',
'n',
'i',
'f',
'o',
'r',
'm',
'R',
'e',
's',
'o',
'u',
'r',
'c',
'e',
'L',
'o',
'c',
'a',
't',
'o',
'r',
'W',0 };
537 {
'P',
'r',
'e',
'f',
'e',
'r',
'r',
'e',
'd',
' ',
'D',
'r',
'o',
'p',
'E',
'f',
'f',
'e',
'c',
't',0 };
539 {
'P',
'e',
'r',
'f',
'o',
'r',
'm',
'e',
'd',
' ',
'D',
'r',
'o',
'p',
'E',
'f',
'f',
'e',
'c',
't',0 };
541 {
'P',
'a',
's',
't',
'e',
' ',
'S',
'u',
'c',
'c',
'e',
'e',
'd',
'e',
'd',0 };
543 {
'I',
'n',
'S',
'h',
'e',
'l',
'l',
'D',
'r',
'a',
'g',
'L',
'o',
'o',
'p',0 };
545 {
'D',
'r',
'a',
'g',
'C',
'o',
'n',
't',
'e',
'x',
't',0 };
547 {
'M',
'o',
'u',
'n',
't',
'e',
'd',
'V',
'o',
'l',
'u',
'm',
'e',0 };
549 {
'P',
'e',
'r',
's',
'i',
's',
't',
'e',
'd',
'D',
'a',
't',
'a',
'O',
'b',
'j',
'e',
'c',
't',0 };
551 {
'T',
'a',
'r',
'g',
'e',
't',
'C',
'L',
'S',
'I',
'D',0 };
553 {
'A',
'u',
't',
'o',
'p',
'l',
'a',
'y',
' ',
'E',
'n',
'u',
'm',
'e',
'r',
'a',
't',
'e',
'd',
554 ' ',
'I',
'D',
'L',
'i',
's',
't',
' ',
'A',
'r',
'r',
'a',
'y',0 };
556 {
'L',
'o',
'g',
'i',
'c',
'a',
'l',
' ',
'P',
'e',
'r',
'f',
'o',
'r',
'm',
'e',
'd',
557 ' ',
'D',
'r',
'o',
'p',
'E',
'f',
'f',
'e',
'c',
't',0 };
560#define CFSTR_SHELLIDLIST WINELIB_NAME_AW(CFSTR_SHELLIDLIST)
561#define CFSTR_SHELLIDLISTOFFSET WINELIB_NAME_AW(CFSTR_SHELLIDLISTOFFSET)
562#define CFSTR_NETRESOURCES WINELIB_NAME_AW(CFSTR_NETRESOURCES)
563#define CFSTR_FILEDESCRIPTOR WINELIB_NAME_AW(CFSTR_FILEDESCRIPTOR)
564#define CFSTR_FILECONTENTS WINELIB_NAME_AW(CFSTR_FILECONTENTS)
565#define CFSTR_FILENAME WINELIB_NAME_AW(CFSTR_FILENAME)
566#define CFSTR_FILENAMEMAP WINELIB_NAME_AW(CFSTR_FILENAMEMAP)
567#define CFSTR_PRINTERGROUP WINELIB_NAME_AW(CFSTR_PRINTERGROUP)
568#define CFSTR_SHELLURL WINELIB_NAME_AW(CFSTR_SHELLURL)
569#define CFSTR_INETURL WINELIB_NAME_AW(CFSTR_INETURL)
570#define CFSTR_PREFERREDDROPEFFECT WINELIB_NAME_AW(CFSTR_PREFERREDDROPEFFECT)
571#define CFSTR_PERFORMEDDROPEFFECT WINELIB_NAME_AW(CFSTR_PERFORMEDDROPEFFECT)
572#define CFSTR_PASTESUCCEEDED WINELIB_NAME_AW(CFSTR_PASTESUCCEEDED)
573#define CFSTR_INDRAGLOOP WINELIB_NAME_AW(CFSTR_INDRAGLOOP)
574#define CFSTR_DRAGCONTEXT WINELIB_NAME_AW(CFSTR_DRAGCONTEXT)
575#define CFSTR_MOUNTEDVOLUME WINELIB_NAME_AW(CFSTR_MOUNTEDVOLUME)
576#define CFSTR_PERSISTEDDATAOBJECT WINELIB_NAME_AW(CFSTR_PERSISTEDDATAOBJECT)
577#define CFSTR_TARGETCLSID WINELIB_NAME_AW(CFSTR_TARGETCLSID)
578#define CFSTR_AUTOPLAY_SHELLIDLISTS WINELIB_NAME_AW(CFSTR_AUTOPLAY_SHELLIDLISTS)
579#define CFSTR_LOGICALPERFORMEDDROPEFFECT WINELIB_NAME_AW(CFSTR_LOGICALPERFORMEDDROPEFFECT)
590#define FCIDM_SHVIEWFIRST 0x0000
592#define FCIDM_SHVIEW_ARRANGE 0x7001
593#define FCIDM_SHVIEW_DELETE 0x7011
594#define FCIDM_SHVIEW_PROPERTIES 0x7013
595#define FCIDM_SHVIEW_CUT 0x7018
596#define FCIDM_SHVIEW_COPY 0x7019
597#define FCIDM_SHVIEW_INSERT 0x701A
598#define FCIDM_SHVIEW_UNDO 0x701B
599#define FCIDM_SHVIEW_INSERTLINK 0x701C
600#define FCIDM_SHVIEW_COPYTO 0x701E
601#define FCIDM_SHVIEW_MOVETO 0x701F
602#define FCIDM_SHVIEW_SELECTALL 0x7021
603#define FCIDM_SHVIEW_INVERTSELECTION 0x7022
605#define FCIDM_SHVIEW_BIGICON 0x7029
606#define FCIDM_SHVIEW_SMALLICON 0x702A
607#define FCIDM_SHVIEW_LISTVIEW 0x702B
608#define FCIDM_SHVIEW_REPORTVIEW 0x702C
610#define FCIDM_SHVIEW_AUTOARRANGE 0x7031
611#define FCIDM_SHVIEW_SNAPTOGRID 0x7032
612#define FCIDM_SHVIEW_ALIGNTOGRID 0x7033
614#define FCIDM_SHVIEW_HELP 0x7041
615#define FCIDM_SHVIEW_NEWLINK 0x7052
616#define FCIDM_SHVIEW_NEWFOLDER 0x7053
618#define FCIDM_SHVIEW_EXPLORE 0x7101
619#define FCIDM_SHVIEW_OPEN 0x7102
621#define FCIDM_SHVIEWLAST 0x7fff
622#define FCIDM_BROWSERFIRST 0xA000
624#define FCIDM_TB_UPFOLDER 0xA001
625#define FCIDM_TB_NEWFOLDER 0xA002
626#define FCIDM_TB_SMALLICON 0xA003
627#define FCIDM_TB_REPORTVIEW 0xA004
628#define FCIDM_TB_DESKTOP 0xA005
630#define FCIDM_BROWSERLAST 0xbf00
631#define FCIDM_GLOBALFIRST 0x8000
632#define FCIDM_GLOBALLAST 0x9fff
637#define FCIDM_MENU_FILE (FCIDM_GLOBALFIRST+0x0000)
638#define FCIDM_MENU_EDIT (FCIDM_GLOBALFIRST+0x0040)
639#define FCIDM_MENU_VIEW (FCIDM_GLOBALFIRST+0x0080)
640#define FCIDM_MENU_VIEW_SEP_OPTIONS (FCIDM_GLOBALFIRST+0x0081)
641#define FCIDM_MENU_TOOLS (FCIDM_GLOBALFIRST+0x00c0)
642#define FCIDM_MENU_TOOLS_SEP_GOTO (FCIDM_GLOBALFIRST+0x00c1)
643#define FCIDM_MENU_HELP (FCIDM_GLOBALFIRST+0x0100)
644#define FCIDM_MENU_FIND (FCIDM_GLOBALFIRST+0x0140)
645#define FCIDM_MENU_EXPLORE (FCIDM_GLOBALFIRST+0x0150)
646#define FCIDM_MENU_FAVORITES (FCIDM_GLOBALFIRST+0x0170)
649#define FCIDM_TOOLBAR (FCIDM_BROWSERFIRST + 0)
650#define FCIDM_STATUS (FCIDM_BROWSERFIRST + 1)
652#define INTERFACE IShellDetails
665#if !defined(__cplusplus) || defined(CINTERFACE)
667#define IShellDetails_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
668#define IShellDetails_AddRef(p) (p)->lpVtbl->AddRef(p)
669#define IShellDetails_Release(p) (p)->lpVtbl->Release(p)
671#define IShellDetails_GetDetailsOf(p,a,b,c) (p)->lpVtbl->GetDetailsOf(p,a,b,c)
672#define IShellDetails_ColumnClick(p,a) (p)->lpVtbl->ColumnClick(p,a)
676#define INTERFACE IQueryInfo
689#if !defined(__cplusplus) || defined(CINTERFACE)
691#define IQueryInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
692#define IQueryInfo_AddRef(p) (p)->lpVtbl->AddRef(p)
693#define IQueryInfo_Release(p) (p)->lpVtbl->Release(p)
695#define IQueryInfo_GetInfoTip(p,a,b) (p)->lpVtbl->GetInfoTip(p,a,b)
696#define IQueryInfo_GetInfoFlags(p,a) (p)->lpVtbl->GetInfoFlags(p,a)
700#define INTERFACE IInputObject
714#if !defined(__cplusplus) || defined(CINTERFACE)
716#define IInputObject_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
717#define IInputObject_AddRef(p) (p)->lpVtbl->AddRef(p)
718#define IInputObject_Release(p) (p)->lpVtbl->Release(p)
720#define IInputObject_UIActivateIO(p,a,b) (p)->lpVtbl->UIActivateIO(p,a,b)
721#define IInputObject_HasFocusIO(p) (p)->lpVtbl->HasFocusIO(p)
722#define IInputObject_TranslateAcceleratorIO(p,a) (p)->lpVtbl->TranslateAcceleratorIO(p,a)
726#define INTERFACE IInputObjectSite
738#if !defined(__cplusplus) || defined(CINTERFACE)
740#define IInputObjectSite_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
741#define IInputObjectSite_AddRef(p) (p)->lpVtbl->AddRef(p)
742#define IInputObjectSite_Release(p) (p)->lpVtbl->Release(p)
744#define IInputObjectSite_OnFocusChangeIS(p,a,b) (p)->lpVtbl->OnFocusChangeIS(p,a,b)
748#define INTERFACE IObjMgr
761#if !defined(__cplusplus) || defined(CINTERFACE)
763#define IObjMgr_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
764#define IObjMgr_AddRef(p) (p)->lpVtbl->AddRef(p)
765#define IObjMgr_Release(p) (p)->lpVtbl->Release(p)
767#define IObjMgr_Append(p,a) (p)->lpVtbl->Append(p,a)
768#define IObjMgr_Remove(p,a) (p)->lpVtbl->Remove(p,a)
772#define INTERFACE ICurrentWorkingDirectory
785#if !defined(__cplusplus) || defined(CINTERFACE)
787#define ICurrentWorkingDirectory_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
788#define ICurrentWorkingDirectory_AddRef(p) (p)->lpVtbl->AddRef(p)
789#define ICurrentWorkingDirectory_Release(p) (p)->lpVtbl->Release(p)
791#define ICurrentWorkingDirectory_GetDirectory(p,a,b) (p)->lpVtbl->GetDirectory(p,a,b)
792#define ICurrentWorkingDirectory_SetDirectory(p,a) (p)->lpVtbl->SetDirectory(p,a)
796#define INTERFACE IACList
808#if !defined(__cplusplus) || defined(CINTERFACE)
810#define IACList_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
811#define IACList_AddRef(p) (p)->lpVtbl->AddRef(p)
812#define IACList_Release(p) (p)->lpVtbl->Release(p)
814#define IACList_Expand(p,a) (p)->lpVtbl->Expand(p,a)
819#define ACLO_NONE 0x00000000
820#define ACLO_CURRENTDIR 0x00000001
821#define ACLO_MYCOMPUTER 0x00000002
822#define ACLO_DESKTOP 0x00000004
823#define ACLO_FAVORITES 0x00000008
824#define ACLO_FILESYSONLY 0x00000010
825#define ACLO_FILESYSDIRS 0x00000020
827#define INTERFACE IACList2
842#if !defined(__cplusplus) || defined(CINTERFACE)
844#define IACList2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
845#define IACList2_AddRef(p) (p)->lpVtbl->AddRef(p)
846#define IACList2_Release(p) (p)->lpVtbl->Release(p)
848#define IACList2_GetOptions(p,a) (p)->lpVtbl->GetOptions(p,a)
849#define IACList2_SetOptions(p,a) (p)->lpVtbl->SetOptions(p,a)
856#define INTERFACE IShellFolderViewCB
868#if !defined(__cplusplus) || defined(CINTERFACE)
870#define IShellFolderViewCB_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
871#define IShellFolderViewCB_AddRef(p) (p)->lpVtbl->AddRef(p)
872#define IShellFolderViewCB_Release(p) (p)->lpVtbl->Release(p)
874#define IShellFolderViewCB_MessageSFVCB(p,a,b,c) (p)->lpVtbl->MessageSFVCB(p,a,b,c)
893#define INTERFACE IShellFolderView
894DEFINE_GUID(IID_IShellFolderView,0x37a378c0,0xf82d,0x11ce,0xae,0x65,0x08,0x00,0x2b,0x2e,0x12,0x62);
934#if !defined(__cplusplus) || defined(CINTERFACE)
936#define IShellFolderView_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
937#define IShellFolderView_AddRef(p) (p)->lpVtbl->AddRef(p)
938#define IShellFolderView_Release(p) (p)->lpVtbl->Release(p)
940#define IShellFolderView_Rearrange(p,a) (p)->lpVtbl->Rearrange(p,a)
941#define IShellFolderView_GetArrangeParam(p,a) (p)->lpVtbl->GetArrangeParam(p,a)
942#define IShellFolderView_ArrangeGrid(p) (p)->lpVtbl->ArrangeGrid(p)
943#define IShellFolderView_AutoArrange(p) (p)->lpVtbl->AutoArrange(p)
944#define IShellFolderView_GetAutoArrange(p) (p)->lpVtbl->GetAutoArrange(p)
945#define IShellFolderView_AddObject(p,a,b) (p)->lpVtbl->AddObject(p,a,b)
946#define IShellFolderView_GetObject(p,a,b) (p)->lpVtbl->GetObject(p,a,b)
947#define IShellFolderView_RemoveObject(p,a,b) (p)->lpVtbl->RemoveObject(p,a,b)
948#define IShellFolderView_GetObjectCount(p,a) (p)->lpVtbl->GetObjectCount(p,a)
949#define IShellFolderView_SetObjectCount(p,a,b) (p)->lpVtbl->SetObjectCount(p,a,b)
950#define IShellFolderView_UpdateObject(p,a,b,c) (p)->lpVtbl->UpdateObject(p,a,b,c)
951#define IShellFolderView_RefreshObject(p,a,b) (p)->lpVtbl->RefreshObject(p,a,b)
952#define IShellFolderView_SetRedraw(p,a) (p)->lpVtbl->SetRedraw(p,a)
953#define IShellFolderView_GetSelectedCount(p,a) (p)->lpVtbl->GetSelectedCount(p,a)
954#define IShellFolderView_GetSelectedObjects(p,a,b) (p)->lpVtbl->GetSelectedObjects(p,a,b)
955#define IShellFolderView_IsDropOnSource(p,a) (p)->lpVtbl->IsDropOnSource(p,a)
956#define IShellFolderView_GetDragPoint(p,a) (p)->lpVtbl->GetDragPoint(p,a)
957#define IShellFolderView_GetDropPoint(p,a) (p)->lpVtbl->GetDropPoint(p,a)
958#define IShellFolderView_MoveIcons(p,a) (p)->lpVtbl->MoveIcons(p,a)
959#define IShellFolderView_SetItemPos(p,a,b) (p)->lpVtbl->SetItemPos(p,a,b)
960#define IShellFolderView_DropTarget(p,a) (p)->lpVtbl->DropTarget(p,a)
961#define IShellFolderView_SetClipboard(p,a) (p)->lpVtbl->SetClipboard(p,a)
962#define IShellFolderView_SetPoints(p,a) (p)->lpVtbl->SetPoints(p,a)
963#define IShellFolderView_GetItemSpacing(p,a) (p)->lpVtbl->GetItemSpacing(p,a)
964#define IShellFolderView_SetCallback(p,a) (p)->lpVtbl->SetCallback(p,a)
965#define IShellFolderView_Select(p,a) (p)->lpVtbl->Select(p,a)
966#define IShellFolderView_QuerySupport(p,a) (p)->lpVtbl->QuerySupport(p,a)
967#define IShellFolderView_SetAutomationObject(p,a) (p)->lpVtbl->SetAutomationObject(p,a)
971#define PROGDLG_NORMAL 0x00000000
972#define PROGDLG_MODAL 0x00000001
973#define PROGDLG_AUTOTIME 0x00000002
974#define PROGDLG_NOTIME 0x00000004
975#define PROGDLG_NOMINIMIZE 0x00000008
976#define PROGDLG_NOPROGRESSBAR 0x00000010
977#define PROGDLG_MARQUEEPROGRESS 0x00000020
978#define PROGDLG_NOCANCEL 0x00000040
980#define PDTIMER_RESET 0x00000001
981#define PDTIMER_PAUSE 0x00000002
982#define PDTIMER_RESUME 0x00000003
984#define INTERFACE IProgressDialog
1005#if !defined(__cplusplus) || defined(CINTERFACE)
1007#define IProgressDialog_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1008#define IProgressDialog_AddRef(p) (p)->lpVtbl->AddRef(p)
1009#define IProgressDialog_Release(p) (p)->lpVtbl->Release(p)
1011#define IProgressDialog_StartProgressDialog(p,a,b,c,d) (p)->lpVtbl->StartProgressDialog(p,a,b,c,d)
1012#define IProgressDialog_StopProgressDialog(p) (p)->lpVtbl->StopProgressDialog(p)
1013#define IProgressDialog_SetTitle(p,a) (p)->lpVtbl->SetTitle(p,a)
1014#define IProgressDialog_SetAnimation(p,a,b) (p)->lpVtbl->SetAnimation(p,a,b)
1015#define IProgressDialog_HasUserCancelled(p) (p)->lpVtbl->HasUserCancelled(p)
1016#define IProgressDialog_SetProgress(p,a,b) (p)->lpVtbl->SetProgress(p,a,b)
1017#define IProgressDialog_SetProgress64(p,a,b) (p)->lpVtbl->SetProgress64(p,a,b)
1018#define IProgressDialog_SetLine(p,a,b,c,d) (p)->lpVtbl->SetLine(p,a,b,c,d)
1019#define IProgressDialog_SetCancelMsg(p,a,b) (p)->lpVtbl->SetCancelMsg(p,a,b)
1020#define IProgressDialog_Timer(p,a,b) (p)->lpVtbl->Timer(p,a,b)
1025#define INTERFACE IDeskBarClient
1043#if !defined(__cplusplus) || defined(CINTERFACE)
1045#define IDeskBarClient_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
1046#define IDeskBarClient_AddRef(p) (p)->lpVtbl->AddRef(p)
1047#define IDeskBarClient_Release(p) (p)->lpVtbl->Release(p)
1049#define IDeskBarClient_GetWindow(p,a) (p)->lpVtbl->GetWindow(p,a)
1050#define IDeskBarClient_ContextSensitiveHelp(p,a) (p)->lpVtbl->ContextSensitiveHelp(p,a)
1052#define IDeskBarClient_SetDeskBarSite(p,a) (p)->lpVtbl->SetDeskBarSite(p,a)
1053#define IDeskBarClient_SetModeDBC(p,a) (p)->lpVtbl->SetModeDBC(p,a)
1054#define IDeskBarClient_UIActivateDBC(p,a) (p)->lpVtbl->UIActivateDBC(p,a)
1055#define IDeskBarClient_GetSize(p,a,b) (p)->lpVtbl->GetSize(p,a,b)
1058#define DBC_GS_IDEAL 0
1059#define DBC_GS_SIZEDOWN 1
1063#define DBC_SHOWOBSCURE 2
1068#ifdef _WINE_WININET_H_
1074typedef struct _tagWALLPAPEROPT
1080typedef WALLPAPEROPT *LPWALLPAPEROPT;
1081typedef const WALLPAPEROPT *LPCWALLPAPEROPT;
1083typedef struct _tagCOMPONENTSOPT
1086 BOOL fEnableComponents;
1087 BOOL fActiveDesktop;
1090typedef COMPONENTSOPT *LPCOMPONENTSOPT;
1091typedef const COMPONENTSOPT *LPCCOMPONENTSOPT;
1094typedef struct _tagCOMPPOS
1105 int iPreferredLeftPercent;
1106 int iPreferredTopPercent;
1109typedef struct _tagCOMPSTATEINFO
1119typedef struct _tagCOMPONENT
1131 DWORD dwCurItemState;
1132 COMPSTATEINFO csiOriginal;
1133 COMPSTATEINFO csiRestored;
1136typedef COMPONENT *LPCOMPONENT;
1137typedef const COMPONENT *LPCCOMPONENT;
1139#pragma push_macro("AddDesktopItem")
1140#undef AddDesktopItem
1143#define INTERFACE IActiveDesktop
1174#pragma pop_macro("AddDesktopItem")
1181#define SHARD_PIDL 0x00000001L
1182#define SHARD_PATHA 0x00000002L
1183#define SHARD_PATHW 0x00000003L
1184#define SHARD_PATH WINELIB_NAME_AW(SHARD_PATH)
1217#define BROWSEINFO WINELIB_NAME_AW(BROWSEINFO)
1218#define PBROWSEINFO WINELIB_NAME_AW(PBROWSEINFO)
1219#define LPBROWSEINFO WINELIB_NAME_AW(LPBROWSEINFO)
1224#define BIF_RETURNONLYFSDIRS 0x0001
1225#define BIF_DONTGOBELOWDOMAIN 0x0002
1226#define BIF_STATUSTEXT 0x0004
1227#define BIF_RETURNFSANCESTORS 0x0008
1228#define BIF_EDITBOX 0x0010
1229#define BIF_VALIDATE 0x0020
1230#define BIF_NEWDIALOGSTYLE 0x0040
1231#define BIF_USENEWUI (BIF_NEWDIALOGSTYLE | BIF_EDITBOX)
1232#define BIF_BROWSEINCLUDEURLS 0x0080
1233#define BIF_UAHINT 0x0100
1234#define BIF_NONEWFOLDERBUTTON 0x0200
1235#define BIF_NOTRANSLATETARGETS 0x0400
1237#define BIF_BROWSEFORCOMPUTER 0x1000
1238#define BIF_BROWSEFORPRINTER 0x2000
1239#define BIF_BROWSEINCLUDEFILES 0x4000
1240#define BIF_SHAREABLE 0x8000
1243#define BFFM_INITIALIZED 1
1244#define BFFM_SELCHANGED 2
1245#define BFFM_VALIDATEFAILEDA 3
1246#define BFFM_VALIDATEFAILEDW 4
1247#define BFFM_IUNKNOWN 5
1250#define BFFM_SETSTATUSTEXTA (WM_USER+100)
1251#define BFFM_ENABLEOK (WM_USER+101)
1252#define BFFM_SETSELECTIONA (WM_USER+102)
1253#define BFFM_SETSELECTIONW (WM_USER+103)
1254#define BFFM_SETSTATUSTEXTW (WM_USER+104)
1255#define BFFM_SETOKTEXT (WM_USER+105)
1256#define BFFM_SETEXPANDED (WM_USER+106)
1260#define SHBrowseForFolder WINELIB_NAME_AW(SHBrowseForFolder)
1262#define BFFM_SETSTATUSTEXT WINELIB_NAME_AW(BFFM_SETSTATUSTEXT)
1263#define BFFM_SETSELECTION WINELIB_NAME_AW(BFFM_SETSELECTION)
1264#define BFFM_VALIDATEFAILED WINELIB_NAME_AW(BFFM_VALIDATEFAILED)
1301#define SFVM_MERGEMENU 1
1302#define SFVM_INVOKECOMMAND 2
1303#define SFVM_GETHELPTEXT 3
1304#define SFVM_GETTOOLTIPTEXT 4
1305#define SFVM_GETBUTTONINFO 5
1306#define SFVM_GETBUTTONS 6
1307#define SFVM_INITMENUPOPUP 7
1308#define SFVM_SELECTIONCHANGED 8
1309#define SFVM_DRAWMENUITEM 9
1310#define SFVM_MEASUREMENUITEM 10
1311#define SFVM_EXITMENULOOP 11
1312#define SFVM_VIEWRELEASE 12
1313#define SFVM_GETNAMELENGTH 13
1314#define SFVM_FSNOTIFY 14
1315#define SFVM_WINDOWCREATED 15
1316#define SFVM_WINDOWCLOSING 16
1317#define SFVM_LISTREFRESHED 17
1318#define SFVM_WINDOWFOCUSED 18
1319#define SFVM_REGISTERCOPYHOOK 20
1320#define SFVM_COPYHOOKCALLBACK 21
1321#define SFVM_GETDETAILSOF 23
1322#define SFVM_COLUMNCLICK 24
1323#define SFVM_QUERYFSNOTIFY 25
1324#define SFVM_DEFITEMCOUNT 26
1325#define SFVM_DEFVIEWMODE 27
1326#define SFVM_UNMERGEFROMMENU 28
1327#define SFVM_ADDINGOBJECT 29
1328#define SFVM_REMOVINGOBJECT 30
1329#define SFVM_UPDATESTATUSBAR 31
1330#define SFVM_BACKGROUNDENUM 32
1331#define SFVM_GETCOMMANDDIR 33
1332#define SFVM_GETCOLUMNSTREAM 34
1333#define SFVM_CANSELECTALL 35
1334#define SFVM_DIDDRAGDROP 36
1335#define SFVM_ISSTRICTREFRESH 37
1336#define SFVM_ISCHILDOBJECT 38
1337#define SFVM_SETISFV 39
1338#define SFVM_GETEXTVIEWS 40
1339#define SFVM_THISIDLIST 41
1340#define SFVM_UPDATINGOBJECT 43
1341#define SFVM_HWNDMAIN 46
1342#define SFVM_ADDPROPERTYPAGES 47
1343#define SFVM_BACKGROUNDENUMDONE 48
1344#define SFVM_GETNOTIFY 49
1345#define SFVM_GETSORTDEFAULTS 53
1347#define SFVM_GETZONE 58
1348#define SFVM_GETPANE 59
1349#define SFVM_GETHELPTOPIC 63
1350#define SFVM_GETANIMATION 68
1351#define SFVM_GET_CUSTOMVIEWINFO 77
1352#define SFVM_ENUMERATEDITEMS 79
1353#define SFVM_GET_VIEW_DATA 80
1354#define SFVM_GET_WEBVIEW_LAYOUT 82
1355#define SFVM_GET_WEBVIEW_CONTENT 83
1356#define SFVM_GET_WEBVIEW_TASKS 84
1357#define SFVM_GET_WEBVIEW_THEME 86
1358#define SFVM_GETDEFERREDVIEWSETTINGS 92
1381#define QCMINFO_PLACE_BEFORE 0
1382#define QCMINFO_PLACE_AFTER 1
1404#define TBIF_DEFAULT 0x00000000
1405#define TBIF_APPEND 0x00000000
1406#define TBIF_PREPEND 0x00000001
1407#define TBIF_REPLACE 0x00000002
1408#define TBIF_INTERNETBAR 0x00010000
1409#define TBIF_STANDARDTOOLBAR 0x00020000
1410#define TBIF_NOTOOLBAR 0x00030000
1432#define SFVM_REARRANGE 0x0001
1433#define SFVM_GETARRANGECOLUMN 0x0002
1434#define SFVM_ADDOBJECT 0x0003
1435#define SFVM_GETITEMCOUNT 0x0004
1436#define SFVM_GETITEMPIDL 0x0005
1437#define SFVM_REMOVEOBJECT 0x0006
1438#define SFVM_UPDATEOBJECT 0x0007
1439#define SFVM_SETREDRAW 0x0008
1440#define SFVM_GETSELECTEDOBJECTS 0x0009
1441#define SFVM_ISDROPONSOURCE 0x000A
1442#define SFVM_MOVEICONS 0x000B
1443#define SFVM_GETDRAGPOINT 0x000C
1444#define SFVM_GETDROPPOINT 0x000D
1445#define SFVM_SETITEMPOS 0x000E
1446#define SFVM_ISDROPONBACKGROUND 0x000F
1447#define SFVM_SETCLIPBOARD 0x0010
1448#define SFVM_TOGGLEAUTOARRANGE 0x0011
1449#define SFVM_LINEUPICONS 0x0012
1450#define SFVM_GETAUTOARRANGE 0x0013
1451#define SFVM_GETSELECTEDCOUNT 0x0014
1452#define SFVM_GETITEMSPACING 0x0015
1453#define SFVM_REFRESHOBJECT 0x0016
1454#define SFVM_SETPOINTS 0x0017
1459#define SHGDFIL_FINDDATA 1
1460#define SHGDFIL_NETRESOURCE 2
1461#define SHGDFIL_DESCRIPTIONID 3
1463#define SHDID_ROOT_REGITEM 1
1464#define SHDID_FS_FILE 2
1465#define SHDID_FS_DIRECTORY 3
1466#define SHDID_FS_OTHER 4
1467#define SHDID_COMPUTER_DRIVE35 5
1468#define SHDID_COMPUTER_DRIVE525 6
1469#define SHDID_COMPUTER_REMOVABLE 7
1470#define SHDID_COMPUTER_FIXED 8
1471#define SHDID_COMPUTER_NETDRIVE 9
1472#define SHDID_COMPUTER_CDROM 10
1473#define SHDID_COMPUTER_RAMDISK 11
1474#define SHDID_COMPUTER_OTHER 12
1475#define SHDID_NET_DOMAIN 13
1476#define SHDID_NET_SERVER 14
1477#define SHDID_NET_SHARE 15
1478#define SHDID_NET_RESTOFNET 16
1479#define SHDID_NET_OTHER 17
1480#define SHDID_COMPUTER_IMAGING 18
1481#define SHDID_COMPUTER_AUDIO 19
1482#define SHDID_COMPUTER_SHAREDDOCS 20
1496 _In_ LPSHELLFOLDER psf,
1505 _In_ LPSHELLFOLDER psf,
1511#define SHGetDataFromIDList WINELIB_NAME_AW(SHGetDataFromIDList)
1538#define SHGetSpecialFolderPath WINELIB_NAME_AW(SHGetSpecialFolderPath)
1612#define SSF_SHOWALLOBJECTS 0x00000001
1613#define SSF_SHOWEXTENSIONS 0x00000002
1614#define SSF_SHOWCOMPCOLOR 0x00000008
1615#define SSF_SORTCOLUMNS 0x00000010
1616#define SSF_SHOWSYSFILES 0x00000020
1617#define SSF_DOUBLECLICKINWEBVIEW 0x00000080
1618#define SSF_SHOWATTRIBCOL 0x00000100
1619#define SSF_DESKTOPHTML 0x00000200
1620#define SSF_WIN95CLASSIC 0x00000400
1621#define SSF_DONTPRETTYPATH 0x00000800
1622#define SSF_MAPNETDRVBUTTON 0x00001000
1623#define SSF_SHOWINFOTIP 0x00002000
1624#define SSF_HIDEICONS 0x00004000
1625#define SSF_NOCONFIRMRECYCLE 0x00008000
1626#define SSF_FILTER 0x00010000
1627#define SSF_WEBVIEW 0x00020000
1628#define SSF_SHOWSUPERHIDDEN 0x00040000
1629#define SSF_SEPPROCESS 0x00080000
1630#if (NTDDI_VERSION >= NTDDI_WINXP)
1631#define SSF_NONETCRAWLING 0x00100000
1632#define SSF_STARTPANELON 0x00200000
1633#define SSF_SHOWSTARTPAGE 0x00400000
1635#if (NTDDI_VERSION >= NTDDI_VISTA)
1636#define SSF_AUTOCHECKSELECT 0x00800000
1637#define SSF_ICONSONLY 0x01000000
1638#define SSF_SHOWTYPEOVERLAY 0x02000000
1640#if (NTDDI_VERSION >= NTDDI_WIN8)
1641#define SSF_SHOWSTATUSBAR 0x04000000
1702#if (NTDDI_VERSION < NTDDI_VISTA)
1703 REST_NOLOGO3CHANNELNOTIFY = 0x4000001C,
1730#if (NTDDI_VERSION < NTDDI_VISTA)
1731 REST_ALLOWFRENCHENCRYPTION = 0x40000036,
1739#if (NTDDI_VERSION < NTDDI_VISTA)
1740 REST_NORECENTDOCSNETHOOD = 0x4000003D,
1755#if (NTDDI_VERSION < NTDDI_VISTA)
1756 REST_NOCOMPUTERSNEARME = 0x4000004B,
1759#if (NTDDI_VERSION >= NTDDI_WINXP) || defined(IE_BACKCOMPAT_VERSION)
1764#if (NTDDI_VERSION >= NTDDI_WINXP)
1774#if (NTDDI_VERSION >= NTDDI_WIN2KSP3)
1778#if (NTDDI_VERSION >= NTDDI_WINXP)
1787#if (NTDDI_VERSION >= NTDDI_WIN2KSP3)
1790#if (NTDDI_VERSION >= NTDDI_WINXP)
1805#if (NTDDI_VERSION >= NTDDI_WIN2KSP3)
1808#if (NTDDI_VERSION >= NTDDI_WINXP)
1813#if (NTDDI_VERSION >= NTDDI_WINXP)
1826#if (NTDDI_VERSION >= NTDDI_WINXPSP1) || defined(IE_BACKCOMPAT_VERSION)
1832#if (NTDDI_VERSION >= NTDDI_WIN2KSP3)
1836#if (NTDDI_VERSION >= NTDDI_WIN2KSP3)
1841#if (NTDDI_VERSION < NTDDI_VISTA)
1842 REST_SORTMAXITEMCOUNT = 0x40000087,
1847#if (NTDDI_VERSION >= NTDDI_WINXPSP2)
1849#if (NTDDI_VERSION < NTDDI_VISTA)
1850 REST_NOSIMPLENETIDLIST = 0x40000092,
1853#if (NTDDI_VERSION < NTDDI_VISTA)
1854 REST_NODETAILSTHUMBNAILONNETWORK = 0x40000094,
1858#if (NTDDI_VERSION >= NTDDI_WINXPSP2)
1859#if (NTDDI_VERSION < NTDDI_VISTA)
1860 REST_ALLOWLEGACYLMZBEHAVIOR = 0x4000009A,
1877#if (NTDDI_VERSION >= NTDDI_WINXPSP2)
1879#if (NTDDI_VERSION < NTDDI_VISTA)
1880 REST_USEDESKTOPINICACHE = 0x41000005,
1897#define SHCNE_RENAMEITEM 0x00000001
1898#define SHCNE_CREATE 0x00000002
1899#define SHCNE_DELETE 0x00000004
1900#define SHCNE_MKDIR 0x00000008
1901#define SHCNE_RMDIR 0x00000010
1902#define SHCNE_MEDIAINSERTED 0x00000020
1903#define SHCNE_MEDIAREMOVED 0x00000040
1904#define SHCNE_DRIVEREMOVED 0x00000080
1905#define SHCNE_DRIVEADD 0x00000100
1906#define SHCNE_NETSHARE 0x00000200
1907#define SHCNE_NETUNSHARE 0x00000400
1908#define SHCNE_ATTRIBUTES 0x00000800
1909#define SHCNE_UPDATEDIR 0x00001000
1910#define SHCNE_UPDATEITEM 0x00002000
1911#define SHCNE_SERVERDISCONNECT 0x00004000
1912#define SHCNE_UPDATEIMAGE 0x00008000
1913#define SHCNE_DRIVEADDGUI 0x00010000
1914#define SHCNE_RENAMEFOLDER 0x00020000
1915#define SHCNE_FREESPACE 0x00040000
1917#define SHCNE_EXTENDED_EVENT 0x04000000
1918#define SHCNE_ASSOCCHANGED 0x08000000
1919#define SHCNE_DISKEVENTS 0x0002381F
1920#define SHCNE_GLOBALEVENTS 0x0C0581E0
1921#define SHCNE_ALLEVENTS 0x7FFFFFFF
1922#define SHCNE_INTERRUPT 0x80000000
1924#define SHCNEE_THEMECHANGED 0x0001L
1925#define SHCNEE_ORDERCHANGED 0x0002L
1926#define SHCNEE_MSI_CHANGE 0x0004L
1927#define SHCNEE_MSI_UNINSTALL 0x0005L
1929#define SHCNF_IDLIST 0x0000
1930#define SHCNF_PATHA 0x0001
1931#define SHCNF_PRINTERA 0x0002
1932#define SHCNF_DWORD 0x0003
1933#define SHCNF_PATHW 0x0005
1934#define SHCNF_PRINTERW 0x0006
1935#define SHCNF_TYPE 0x00FF
1936#define SHCNF_FLUSH 0x1000
1937#define SHCNF_FLUSHNOWAIT 0x3000
1938#define SHCNF_NOTIFYRECURSIVE 0x10000
1940#define SHCNF_PATH WINELIB_NAME_AW(SHCNF_PATH)
1941#define SHCNF_PRINTER WINELIB_NAME_AW(SHCNF_PRINTER)
1943#define SHCNRF_InterruptLevel 0x0001
1944#define SHCNRF_ShellLevel 0x0002
1945#define SHCNRF_RecursiveInterrupt 0x1000
1946#define SHCNRF_NewDelivery 0x8000
1963#if (NTDDI_VERSION < NTDDI_LONGHORN)
1972#if (NTDDI_VERSION >= NTDDI_LONGHORN)
1977#if (NTDDI_VERSION >= NTDDI_WIN7)
1983#if (NTDDI_VERSION >= NTDDI_WIN8)
2005 WORD wFillAttribute;
2006 WORD wPopupFillAttribute;
2007 COORD dwScreenBufferSize;
2009 COORD dwWindowOrigin;
2011 DWORD nInputBufferSize;
2021 UINT uHistoryBufferSize;
2022 UINT uNumberOfHistoryBuffers;
2025} NT_CONSOLE_PROPS, *LPNT_CONSOLE_PROPS;
2059#define EXP_SZ_LINK_SIG 0xA0000001
2060#define NT_CONSOLE_PROPS_SIG 0xA0000002
2061#define NT_FE_CONSOLE_PROPS_SIG 0xA0000004
2062#define EXP_SPECIAL_FOLDER_SIG 0xA0000005
2063#define EXP_DARWIN_ID_SIG 0xA0000006
2064#if (NTDDI_VERSION < NTDDI_LONGHORN)
2065#define EXP_LOGO3_ID_SIG 0xA0000007
2067#define EXP_SZ_ICON_SIG 0xA0000007
2068#define EXP_PROPERTYSTORAGE_SIG 0xA0000009
2131#define SHCreateDirectoryEx WINELIB_NAME_AW(SHCreateDirectoryEx)
2179#define SHGetFolderPath WINELIB_NAME_AW(SHGetFolderPath)
2181#define CSIDL_DESKTOP 0x0000
2182#define CSIDL_INTERNET 0x0001
2183#define CSIDL_PROGRAMS 0x0002
2184#define CSIDL_CONTROLS 0x0003
2185#define CSIDL_PRINTERS 0x0004
2186#define CSIDL_PERSONAL 0x0005
2187#define CSIDL_FAVORITES 0x0006
2188#define CSIDL_STARTUP 0x0007
2189#define CSIDL_RECENT 0x0008
2190#define CSIDL_SENDTO 0x0009
2191#define CSIDL_BITBUCKET 0x000a
2192#define CSIDL_STARTMENU 0x000b
2193#define CSIDL_MYDOCUMENTS CSIDL_PERSONAL
2194#define CSIDL_MYMUSIC 0x000d
2195#define CSIDL_MYVIDEO 0x000e
2196#define CSIDL_DESKTOPDIRECTORY 0x0010
2197#define CSIDL_DRIVES 0x0011
2198#define CSIDL_NETWORK 0x0012
2199#define CSIDL_NETHOOD 0x0013
2200#define CSIDL_FONTS 0x0014
2201#define CSIDL_TEMPLATES 0x0015
2202#define CSIDL_COMMON_STARTMENU 0x0016
2203#define CSIDL_COMMON_PROGRAMS 0X0017
2204#define CSIDL_COMMON_STARTUP 0x0018
2205#define CSIDL_COMMON_DESKTOPDIRECTORY 0x0019
2206#define CSIDL_APPDATA 0x001a
2207#define CSIDL_PRINTHOOD 0x001b
2208#define CSIDL_LOCAL_APPDATA 0x001c
2209#define CSIDL_ALTSTARTUP 0x001d
2210#define CSIDL_COMMON_ALTSTARTUP 0x001e
2211#define CSIDL_COMMON_FAVORITES 0x001f
2212#define CSIDL_INTERNET_CACHE 0x0020
2213#define CSIDL_COOKIES 0x0021
2214#define CSIDL_HISTORY 0x0022
2215#define CSIDL_COMMON_APPDATA 0x0023
2216#define CSIDL_WINDOWS 0x0024
2217#define CSIDL_SYSTEM 0x0025
2218#define CSIDL_PROGRAM_FILES 0x0026
2219#define CSIDL_MYPICTURES 0x0027
2220#define CSIDL_PROFILE 0x0028
2221#define CSIDL_SYSTEMX86 0x0029
2222#define CSIDL_PROGRAM_FILESX86 0x002a
2223#define CSIDL_PROGRAM_FILES_COMMON 0x002b
2224#define CSIDL_PROGRAM_FILES_COMMONX86 0x002c
2225#define CSIDL_COMMON_TEMPLATES 0x002d
2226#define CSIDL_COMMON_DOCUMENTS 0x002e
2227#define CSIDL_COMMON_ADMINTOOLS 0x002f
2228#define CSIDL_ADMINTOOLS 0x0030
2229#define CSIDL_CONNECTIONS 0x0031
2230#define CSIDL_COMMON_MUSIC 0x0035
2231#define CSIDL_COMMON_PICTURES 0x0036
2232#define CSIDL_COMMON_VIDEO 0x0037
2233#define CSIDL_RESOURCES 0x0038
2234#define CSIDL_RESOURCES_LOCALIZED 0x0039
2235#define CSIDL_COMMON_OEM_LINKS 0x003a
2236#define CSIDL_CDBURN_AREA 0x003b
2237#define CSIDL_COMPUTERSNEARME 0x003d
2238#define CSIDL_PROFILES 0x003e
2239#define CSIDL_FOLDER_MASK 0x00ff
2240#define CSIDL_FLAG_PER_USER_INIT 0x0800
2241#define CSIDL_FLAG_NO_ALIAS 0x1000
2242#define CSIDL_FLAG_DONT_VERIFY 0x4000
2243#define CSIDL_FLAG_CREATE 0x8000
2245#define CSIDL_FLAG_MASK 0xff00
2266#if (NTDDI_VERSION >= NTDDI_WINXP)
2280#define SHCreateFileExtractIcon SHCreateFileExtractIconW
2308#define SHDefExtractIcon WINELIB_NAME_AW(SHDefExtractIcon)
2325#define FD_CLSID 0x00000001
2326#define FD_SIZEPOINT 0x00000002
2327#define FD_ATTRIBUTES 0x00000004
2328#define FD_CREATETIME 0x00000008
2329#define FD_ACCESSTIME 0x00000010
2330#define FD_WRITESTIME 0x00000020
2331#define FD_FILESIZE 0x00000040
2332#define FD_PROGRESSUI 0x00004000
2333#define FD_LINKUI 0x00008000
2334#if (NTDDI_VERSION >= NTDDI_VISTA)
2335#define FD_UNICODE 0x80000000
2409#define CABINETSTATE_VERSION 2
2424#define PPCF_ADDQUOTES 0x01
2425#define PPCF_INCLUDEARGS 0x02
2426#define PPCF_ADDARGUMENTS 0x03
2427#define PPCF_NODIRECTORIES 0x10
2428#define PPCF_DONTRESOLVE 0x20
2429#define PPCF_FORCEQUALIFY 0x40
2430#define PPCF_LONGESTPOSSIBLE 0x80
2433#define PRF_VERIFYEXISTS 0x01
2434#define PRF_EXECUTABLE 0x02
2435#define PRF_TRYPROGRAMEXTENSIONS (PRF_EXECUTABLE | PRF_VERIFYEXISTS)
2436#define PRF_FIRSTDIRDEF 0x04
2437#define PRF_DONTFINDLNK 0x08
2438#if (NTDDI_VERSION >= NTDDI_WINXPSP2)
2439#define PRF_REQUIREABSOLUTE 0x10
2497#define PID_IS_NAME 4
2498#define PID_IS_WORKINGDIR 5
2499#define PID_IS_HOTKEY 6
2500#define PID_IS_SHOWCMD 7
2501#define PID_IS_ICONINDEX 8
2502#define PID_IS_ICONFILE 9
2503#define PID_IS_WHATSNEW 10
2504#define PID_IS_AUTHOR 11
2505#define PID_IS_DESCRIPTION 12
2506#define PID_IS_COMMENT 13
2514#define ILCreateFromPath WINELIB_NAME_AW(ILCreateFromPath)
2529 return !(pidl && pidl->mkid.cb);
2536#define MM_ADDSEPARATOR 0x00000001L
2537#define MM_SUBMENUSHAVEIDS 0x00000002L
2538#define MM_DONTREMOVESEPS 0x00000004L
2597#define DFM_MERGECONTEXTMENU 1
2598#define DFM_INVOKECOMMAND 2
2599#define DFM_INVOKECOMMANDEX 12
2600#define DFM_GETDEFSTATICID 14
2602#define DFM_GETHELPTEXT 5
2603#define DFM_WM_MEASUREITEM 6
2604#define DFM_WM_DRAWITEM 7
2605#define DFM_WM_INITMENUPOPUP 8
2606#define DFM_VALIDATECMD 9
2607#define DFM_MERGECONTEXTMENU_TOP 10
2608#define DFM_GETHELPTEXTW 11
2609#define DFM_MAPCOMMANDNAME 13
2610#define DFM_GETVERBW 15
2611#define DFM_GETVERBA 16
2612#define DFM_MERGECONTEXTMENU_BOTTOM 17
2613#define DFM_MODIFYQCMFLAGS 18
2616#define DFM_CMD_DELETE ((UINT)-1)
2617#define DFM_CMD_MOVE ((UINT)-2)
2618#define DFM_CMD_COPY ((UINT)-3)
2619#define DFM_CMD_LINK ((UINT)-4)
2620#define DFM_CMD_PROPERTIES ((UINT)-5)
2621#define DFM_CMD_NEWFOLDER ((UINT)-6)
2622#define DFM_CMD_PASTE ((UINT)-7)
2623#define DFM_CMD_VIEWLIST ((UINT)-8)
2624#define DFM_CMD_VIEWDETAILS ((UINT)-9)
2625#define DFM_CMD_PASTELINK ((UINT)-10)
2626#define DFM_CMD_PASTESPECIAL ((UINT)-11)
2627#define DFM_CMD_MODALPROP ((UINT)-12)
2628#define DFM_CMD_RENAME ((UINT)-13)
2678 DWORD dwAttributeMask,
2692#if (NTDDI_VERSION >= NTDDI_VISTA)
2712#define INTERFACE IShellIconOverlayIdentifier
2725#if !defined(__cplusplus) || defined(CINTERFACE)
2727#define IShellIconOverlayIdentifier_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
2728#define IShellIconOverlayIdentifier_AddRef(p) (p)->lpVtbl->AddRef(p)
2729#define IShellIconOverlayIdentifier_Release(p) (p)->lpVtbl->Release(p)
2731#define IShellIconOverlayIdentifier_IsMemberOf(p,a,b) (p)->lpVtbl->IsMemberOf(p,a,b)
2732#define IShellIconOverlayIdentifier_GetOverlayInfo(p,a,b,c,d) (p)->lpVtbl->GetOverlayInfo(p,a,b,c,d)
2733#define IShellIconOverlayIdentifier_GetPriority(p,a) (p)->lpVtbl->GetPriority(p,a)
2736#define ISIOI_ICONFILE 0x00000001
2737#define ISIOI_ICONINDEX 0x00000002
2748#define TLMENUF_INCLUDECURRENT 0x00000001
2749#define TLMENUF_CHECKCURRENT (TLMENUF_INCLUDECURRENT | 0x00000002)
2750#define TLMENUF_BACK 0x00000010
2751#define TLMENUF_FORE 0x00000020
2752#define TLMENUF_BACKANDFORTH (TLMENUF_BACK | TLMENUF_FORE | TLMENUF_INCLUDECURRENT)
2757#define INTERFACE IDockingWindowSite
2776#if !defined(__cplusplus) || defined(CINTERFACE)
2778#define IDockingWindowSite_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
2779#define IDockingWindowSite_AddRef(p) (p)->lpVtbl->AddRef(p)
2780#define IDockingWindowSite_Release(p) (p)->lpVtbl->Release(p)
2782#define IDockingWindowSite_GetWindow(p,a) (p)->lpVtbl->GetWindow(p,a)
2783#define IDockingWindowSite_ContextSensitiveHelp(p,a) (p)->lpVtbl->ContextSensitiveHelp(p,a)
2785#define IDockingWindowSite_GetBorderDW(p,a,b) (p)->lpVtbl->GetBorderDW(p,a,b)
2786#define IDockingWindowSite_RequestBorderSpaceDW(p,a,b) (p)->lpVtbl->RequestBorderSpaceDW(p,a,b)
2787#define IDockingWindowSite_SetBorderSpaceDW(p,a,b) (p)->lpVtbl->SetBorderSpaceDW(p,a,b)
2792#define ISFB_MASK_STATE 0x00000001
2793#define ISFB_MASK_IDLIST 0x00000010
2795#define ISFB_STATE_QLINKSMODE 0x00000020
2796#define ISFB_STATE_NOSHOWTEXT 0x00000004
2816#define INTERFACE IShellFolderBand
2832#if (NTDDI_VERSION >= NTDDI_WIN2K) && (NTDDI_VERSION <= NTDDI_WINXPSP2)
static VOID SetWallpaper(PBACKGROUND_DATA pData)
void GetDirectory(LPTSTR wholepath, LPTSTR directory, BOOL CheckExisting)
#define DECLARE_INTERFACE_(i, b)
HRESULT WINAPI GetInfoTip(IUnknown *param8, long paramC, LPTSTR *param10, long cchMax)
DWORD WINAPI GetSize(LPVOID)
static const WCHAR wszFriendlyName[]
static const WCHAR dwWidth[]
static const WCHAR dwHeight[]
HRESULT GetDetailsOf(IShellFolder2 &Folder, PCUITEMID_CHILD pidl, UINT Column, PWSTR &String)
#define __WINE_ALLOC_SIZE(...)
BOOL WINAPI SHGetSpecialFolderPathA(HWND hwndOwner, LPSTR szPath, int nFolder, BOOL bCreate)
BOOL WINAPI PathYetAnotherMakeUniqueName(LPWSTR buffer, LPCWSTR path, LPCWSTR shortname, LPCWSTR longname)
BOOL WINAPI SHGetSpecialFolderPathW(HWND hwndOwner, LPWSTR szPath, int nFolder, BOOL bCreate)
static IShellFolder IShellItem **static IBindCtx LPITEMIDLIST SFGAOF
#define DECLARE_HANDLE(name)
PSDBQUERYRESULT_VISTA PVOID DWORD * dwSize
static HRESULT QueryInterface(REFIID, void **)
static ULONG WINAPI AddRef(IStream *iface)
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
static int int const SCRIPT_CONTROL const SCRIPT_STATE SCRIPT_ITEM ULONG int * pcItems
_In_ HANDLE _In_ DWORD _In_ DWORD _Inout_opt_ LPOVERLAPPED _In_opt_ LPTRANSMIT_FILE_BUFFERS _In_ DWORD dwReserved
_Out_ PULONG _Out_ PULONG pIndex
_In_ LPWSTR _In_ DWORD _In_ DWORD _In_ DWORD dwFlags
_In_ LPWSTR _In_ DWORD _In_ LPCVOID pvData
#define _Inout_updates_(s)
#define _Outptr_result_maybenull_
#define _Outptr_result_buffer_(s)
#define _Outptr_opt_result_buffer_(s)
#define _In_reads_opt_(s)
#define _Out_writes_bytes_(s)
interface IMalloc * LPMALLOC
interface IStream * LPSTREAM
BOOL WINAPI SHGetPathFromIDListA(LPCITEMIDLIST pidl, LPSTR pszPath)
BOOL WINAPI SHGetPathFromIDListW(LPCITEMIDLIST pidl, LPWSTR pszPath)
BOOL(CALLBACK * LPFNADDPROPSHEETPAGE)(HPROPSHEETPAGE, LPARAM)
#define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8)
struct _SHChangeDWORDAsIDList SHChangeDWORDAsIDList
struct _FILEGROUPDESCRIPTORW FILEGROUPDESCRIPTORW
int WINAPI PathCleanupSpec(_In_opt_ LPCWSTR, _Inout_ LPWSTR)
struct _FILEGROUPDESCRIPTORA * LPFILEGROUPDESCRIPTORA
LPVOID WINAPI SHAlloc(SIZE_T) __WINE_ALLOC_SIZE(1)
struct tagBROWSEINFOA * LPBROWSEINFOA
struct _SHDESCRIPTIONID * LPSHDESCRIPTIONID
struct tagDATABLOCKHEADER * LPDATABLOCK_HEADER
int WINAPI SHCreateDirectory(_In_opt_ HWND, _In_ LPCWSTR)
struct _FILEDESCRIPTORW * LPFILEDESCRIPTORW
HRESULT WINAPI SHILCreateFromPath(_In_ PCWSTR, _Outptr_ PIDLIST_ABSOLUTE *, _Inout_opt_ DWORD *)
HRESULT WINAPI SHCreateDefaultContextMenu(_In_ const DEFCONTEXTMENU *, _In_ REFIID, _Outptr_ void **ppv)
_In_ int _In_ BOOL bCreate
BOOL WINAPI SHObjectProperties(_In_opt_ HWND, _In_ DWORD, _In_ LPCWSTR, _In_opt_ LPCWSTR)
struct tagBROWSEINFOA * PBROWSEINFOA
struct tagBROWSEINFOA BROWSEINFOA
UINT WINAPI SHAddFromPropSheetExtArray(_In_ HPSXA, _In_ LPFNADDPROPSHEETPAGE, LPARAM)
PIDLIST_ABSOLUTE WINAPI ILCombine(_In_opt_ PCIDLIST_ABSOLUTE, _In_opt_ PCUIDLIST_RELATIVE)
PUIDLIST_RELATIVE WINAPI ILGetNext(_In_opt_ PCUIDLIST_RELATIVE)
_Check_return_ HRESULT WINAPI SHGetMalloc(_Outptr_ LPMALLOC *lpmal)
static const WCHAR CFSTR_PREFERREDDROPEFFECTW[]
struct _FILEGROUPDESCRIPTORA FILEGROUPDESCRIPTORA
HRESULT WINAPI SHPathPrepareForWriteW(_In_opt_ HWND, _In_opt_ IUnknown *, _In_ LPCWSTR, DWORD)
struct _FILEDESCRIPTORA * LPFILEDESCRIPTORA
int WINAPI SHMapPIDLToSystemImageListIndex(_In_ IShellFolder *, _In_ PCUITEMID_CHILD, _Out_opt_ int *)
HRESULT WINAPI SHOpenFolderAndSelectItems(_In_ PCIDLIST_ABSOLUTE pidlFolder, _In_ UINT cidl, _In_reads_opt_(cidl) PCUITEMID_CHILD_ARRAY, _In_ DWORD)
static const WCHAR CFSTR_FILECONTENTSW[]
PIDLIST_ABSOLUTE WINAPI SHBrowseForFolderW(_In_ LPBROWSEINFOW lpbi)
struct _SHChangeDWORDAsIDList * LPSHChangeDWORDAsIDList
struct tagBROWSEINFOW * PBROWSEINFOW
DWORD WINAPI SHCLSIDFromStringW(_In_ LPCWSTR, _Out_ CLSID *)
struct SHFOLDERCUSTOMSETTINGSA * LPSHFOLDERCUSTOMSETTINGSA
struct _FILEDESCRIPTORW FILEDESCRIPTORW
void(CALLBACK * PFNASYNCICONTASKBALLBACK)(LPCITEMIDLIST pidl, LPVOID pvData, LPVOID pvHint, INT iIconIndex, INT iOpenIconIndex)
DWORD WINAPI SHCLSIDFromStringA(_In_ LPCSTR, _Out_ CLSID *)
struct BANDINFOSFB * PBANDINFOSFB
struct _SHDESCRIPTIONID SHDESCRIPTIONID
BOOL WINAPI SHFindFiles(_In_opt_ PCIDLIST_ABSOLUTE, _In_opt_ PCIDLIST_ABSOLUTE)
UINT WINAPI SHReplaceFromPropSheetExtArray(_In_ HPSXA, UINT, _In_ LPFNADDPROPSHEETPAGE, LPARAM)
struct _DROPFILES DROPFILES
HRESULT WINAPI SHStartNetConnectionDialogA(_In_ HWND hwnd, _In_ LPCSTR pszRemoteName, _In_ DWORD dwType)
BOOL WINAPI SHOpenPropSheetA(_In_opt_ LPCSTR pszCaption, _In_opt_ HKEY *ahKeys, _In_ UINT cKeys, _In_ const CLSID *pclsidDefault, _In_ IDataObject *pDataObject, _In_opt_ IShellBrowser *pShellBrowser, _In_opt_ LPCSTR pszStartPage)
struct _QCMINFO * LPQCMINFO
struct tagDATABLOCKHEADER DATABLOCK_HEADER
struct tagOPENASINFO OPENASINFO
HRESULT WINAPI SHCreateDefaultExtractIcon(REFIID riid, void **ppv)
BOOL WINAPI DAD_DragEnterEx2(_In_ HWND, POINT, _In_opt_ IDataObject *)
BOOL WINAPI PathIsSlowW(_In_ LPCWSTR pszFile, _In_ DWORD dwAttr)
HRESULT WINAPI SHBindToParent(_In_ PCIDLIST_ABSOLUTE pidl, _In_ REFIID riid, _Outptr_ LPVOID *ppv, _Outptr_opt_ PCUITEMID_CHILD *ppidlLast)
struct EXP_DARWIN_LINK * LPEXP_DARWIN_LINK
struct CABINETSTATE * LPCABINETSTATE
BOOL WINAPI GetFileNameFromBrowse(_In_opt_ HWND, _Inout_updates_(cchFilePath) LPWSTR, UINT cchFilePath, _In_opt_ LPCWSTR, _In_ LPCWSTR, _In_opt_ LPCWSTR, _In_opt_ LPCWSTR)
struct SHELLFLAGSTATE * LPSHELLFLAGSTATE
int WINAPI RestartDialogEx(_In_opt_ HWND, _In_opt_ LPCWSTR, DWORD, DWORD)
HRESULT WINAPI SHGetDataFromIDListA(_In_ LPSHELLFOLDER psf, _In_ PCUITEMID_CHILD pidl, int nFormat, _Out_writes_bytes_(cb) LPVOID pv, int cb)
INT WINAPI SHHandleUpdateImage(_In_ PCIDLIST_ABSOLUTE)
static const WCHAR CFSTR_PASTESUCCEEDEDW[]
HRESULT WINAPI SHCreateStdEnumFmtEtc(_In_ UINT cfmt, _In_reads_(cfmt) const FORMATETC *, _Outptr_ IEnumFORMATETC **)
struct _TBINFO * LPTBINFO
HRESULT WINAPI SHGetFolderPathAndSubDirA(_Reserved_ HWND, _In_ int, _In_opt_ HANDLE, _In_ DWORD, _In_opt_ LPCSTR, _Out_writes_(MAX_PATH) LPSTR)
HRESULT(CALLBACK * LPFNVIEWCALLBACK)(_In_ IShellView *dwUser, _In_ IShellFolder *pshf, _In_ HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
struct _SHChangeProductKeyAsIDList SHChangeProductKeyAsIDList
struct tagBROWSEINFOW * LPBROWSEINFOW
HRESULT WINAPI SHGetAttributesFromDataObject(_In_opt_ IDataObject *pdo, DWORD dwAttributeMask, _Out_opt_ DWORD *pdwAttributes, _Out_opt_ UINT *pcItems)
PIDLIST_RELATIVE WINAPI ILAppendID(_In_opt_ PIDLIST_RELATIVE, _In_ LPCSHITEMID, BOOL)
struct _ITEMSPACING ITEMSPACING
HRESULT WINAPI SHParseDisplayName(_In_ PCWSTR pszName, _In_opt_ IBindCtx *pbc, _Outptr_ PIDLIST_ABSOLUTE *ppidl, _In_ SFGAOF sfgaoIn, _Out_opt_ SFGAOF *psfgaoOut)
HRESULT WINAPI ILLoadFromStream(_In_ LPSTREAM, _Inout_ PIDLIST_RELATIVE *)
UINT WINAPI Shell_MergeMenus(_In_ HMENU hmDst, _In_ HMENU hmSrc, UINT uInsert, UINT uIDAdjust, UINT uIDAdjustMax, ULONG uFlags)
int WINAPI RealDriveType(int, BOOL)
PITEMID_CHILD WINAPI ILCloneFirst(_In_ PCUIDLIST_RELATIVE)
INT WINAPI PickIconDlg(_In_opt_ HWND, _Inout_updates_(cchIconPath) LPWSTR, UINT cchIconPath, _Inout_opt_ int *)
static const WCHAR CFSTR_NETRESOURCESW[]
HRESULT WINAPI CIDLData_CreateFromIDArray(_In_ PCIDLIST_ABSOLUTE pidlFolder, _In_ UINT cidl, _In_reads_opt_(cidl) PCUIDLIST_RELATIVE_ARRAY apidl, _Outptr_ IDataObject **ppdtobj)
HRESULT WINAPI SHStartNetConnectionDialog(HWND, LPCSTR, DWORD)
BOOL WINAPI WriteCabinetState(_In_ CABINETSTATE *)
LRESULT WINAPI SHShellFolderView_Message(_In_ HWND hwndCabinet, UINT uMessage, LPARAM lParam)
BOOL WINAPI ReadCabinetState(_Out_writes_bytes_(cLength) CABINETSTATE *, int cLength)
HRESULT WINAPI SHDoDragDrop(_In_opt_ HWND, _In_ IDataObject *, _In_opt_ IDropSource *, _In_ DWORD, _Out_ LPDWORD)
HRESULT WINAPI SHOpenWithDialog(_In_opt_ HWND hwndParent, _In_ const OPENASINFO *poainfo)
_Check_return_ HRESULT WINAPI SHGetSpecialFolderLocation(_Reserved_ HWND hwndOwner, _In_ int nFolder, _Outptr_ PIDLIST_ABSOLUTE *ppidl)
HINSTANCE WINAPI SHGetShellStyleHInstance(VOID)
void WINAPI SHFree(_In_opt_ LPVOID)
HRESULT WINAPI SHStartNetConnectionDialogW(_In_ HWND hwnd, _In_ LPCWSTR pszRemoteName, _In_ DWORD dwType)
BOOL WINAPI DAD_DragEnterEx(HWND, POINT)
BOOL WINAPI SHOpenPropSheetW(_In_opt_ LPCWSTR pszCaption, _In_opt_ HKEY *ahKeys, _In_ UINT cKeys, _In_ const CLSID *pclsidDefault, _In_ IDataObject *pDataObject, _In_opt_ IShellBrowser *pShellBrowser, _In_opt_ LPCWSTR pszStartPage)
@ SLDF_PREFER_ENVIRONMENT_PATH
@ SLDF_DISABLE_KNOWNFOLDER_RELATIVE_TRACKING
@ SLDF_ALLOW_LINK_TO_LINK
@ SLDF_DISABLE_LINK_PATH_TRACKING
@ SLDF_PERSIST_VOLUME_ID_RELATIVE
@ SLDF_FORCE_NO_LINKTRACK
@ SLDF_ENABLE_TARGET_METADATA
@ SLDF_RUN_WITH_SHIMLAYER
@ SLDF_KEEP_LOCAL_IDLIST_FOR_UNC_TARGET
struct SHFOLDERCUSTOMSETTINGSW * LPSHFOLDERCUSTOMSETTINGSW
static const WCHAR CFSTR_SHELLURLW[]
@ OAIF_ALLOW_REGISTRATION
@ OAIF_FORCE_REGISTRATION
@ KF_FLAG_NO_APPCONTAINER_REDIRECTION
@ KF_FLAG_NOT_PARENT_RELATIVE
HRESULT WINAPI SHLoadOLE(LPARAM)
HPSXA WINAPI SHCreatePropSheetExtArray(_In_ HKEY, _In_opt_ LPCWSTR, UINT)
BOOL WINAPI DAD_SetDragImage(HIMAGELIST, LPPOINT)
HRESULT WINAPI SHGetRealIDL(_In_ IShellFolder *psf, _In_ PCUITEMID_CHILD pidlSimple, _Outptr_ PITEMID_CHILD *ppidlReal)
int WINAPI SHCreateDirectoryExA(_In_opt_ HWND, _In_ LPCSTR, _In_opt_ LPSECURITY_ATTRIBUTES)
static const WCHAR CFSTR_FILENAMEW[]
LONG WINAPI PathProcessCommand(_In_ LPCWSTR, _Out_writes_(cchDest) LPWSTR, int cchDest, DWORD)
HRESULT WINAPI SHCreateShellItem(_In_opt_ PCIDLIST_ABSOLUTE, _In_opt_ IShellFolder *, _In_ PCUITEMID_CHILD, _Outptr_ IShellItem **)
static const WCHAR CFSTR_SHELLIDLISTOFFSETW[]
HRESULT WINAPI SHDefExtractIconW(_In_ LPCWSTR pszIconFile, int iIndex, UINT uFlags, _Out_opt_ HICON *phiconLarge, _Out_opt_ HICON *phiconSmall, UINT nIconSize)
BOOL WINAPI ILRemoveLastID(_Inout_opt_ PUIDLIST_RELATIVE)
BOOL WINAPI PathIsSlowA(_In_ LPCSTR pszFile, _In_ DWORD dwAttr)
_Check_return_ HRESULT WINAPI SHGetDesktopFolder(_Outptr_ IShellFolder **)
static const WCHAR CFSTR_INDRAGLOOPW[]
PUITEMID_CHILD WINAPI ILFindLastID(_In_ PCUIDLIST_RELATIVE)
static const WCHAR CFSTR_PRINTERGROUPW[]
BOOL WINAPI IsUserAnAdmin(void)
HRESULT WINAPI SHGetFolderPathAndSubDirW(_Reserved_ HWND, _In_ int, _In_opt_ HANDLE, _In_ DWORD, _In_opt_ LPCWSTR, _Out_writes_(MAX_PATH) LPWSTR)
PIDLIST_ABSOLUTE WINAPI SHBrowseForFolderA(_In_ LPBROWSEINFOA lpbi)
void WINAPI SHAddToRecentDocs(UINT, _In_opt_ LPCVOID)
HRESULT WINAPI SHGetFolderPathA(_Reserved_ HWND hwnd, _In_ int nFolder, _In_opt_ HANDLE hToken, _In_ DWORD dwFlags, _Out_writes_(MAX_PATH) LPSTR pszPath)
HRESULT WINAPI SHCreateShellFolderView(_In_ const SFV_CREATE *pscfv, _Outptr_ IShellView **ppsv)
BOOL WINAPI SHChangeNotification_Unlock(_In_ HANDLE hLock)
struct _QCMINFO_IDMAP QCMINFO_IDMAP
HRESULT WINAPI SHMultiFileProperties(_In_ IDataObject *pDataObject, _In_ DWORD dwFlags)
BOOL WINAPI DAD_AutoScroll(HWND, AUTO_SCROLL_DATA *, const POINT *)
BOOL WINAPI ILIsParent(_In_ PCIDLIST_ABSOLUTE, _In_ PCIDLIST_ABSOLUTE, BOOL)
HRESULT WINAPI SHSetFolderPathW(_In_ INT csidl, _In_ HANDLE hToken, _In_ DWORD dwFlags, _In_ LPCWSTR pszPath)
HRESULT WINAPI SHGetFolderPathW(_Reserved_ HWND hwnd, _In_ int nFolder, _In_opt_ HANDLE hToken, _In_ DWORD dwFlags, _Out_writes_(MAX_PATH) LPWSTR pszPath)
VOID WINAPI SHUpdateImageW(_In_ LPCWSTR, INT, UINT, INT)
void WINAPI SHChangeNotify(LONG wEventId, UINT uFlags, LPCVOID dwItem1, LPCVOID dwItem2)
VOID WINAPI SHGetSetSettings(LPSHELLSTATE lpss, DWORD dwMask, BOOL bSet)
void WINAPI SHDestroyPropSheetExtArray(_In_ HPSXA)
int WINAPI IsNetDrive(int)
BOOL WINAPI DAD_DragMove(POINT)
HRESULT WINAPI SHCreateQueryCancelAutoPlayMoniker(IMoniker **)
HRESULT WINAPI CDefFolderMenu_Create2(_In_opt_ PCIDLIST_ABSOLUTE, _In_opt_ HWND, UINT cidl, _In_reads_opt_(cidl) PCUITEMID_CHILD_ARRAY, _In_opt_ IShellFolder *, _In_opt_ LPFNDFMCALLBACK, UINT nKeys, _In_reads_opt_(nKeys) const HKEY *, _Outptr_ IContextMenu **)
BOOL WINAPI ILIsEqual(_In_ PCIDLIST_ABSOLUTE, _In_ PCIDLIST_ABSOLUTE)
struct _FILEGROUPDESCRIPTORW * LPFILEGROUPDESCRIPTORW
struct _SFVM_PROPPAGE_DATA SFVM_PROPPAGE_DATA
static BOOL ILIsEmpty(_In_opt_ PCUIDLIST_RELATIVE pidl)
PIDLIST_ABSOLUTE WINAPI ILCreateFromPathA(_In_ PCSTR)
static const WCHAR CFSTR_MOUNTEDVOLUMEW[]
struct SHELLSTATE * LPSHELLSTATE
BOOL WINAPI SHRunControlPanel(_In_ LPCWSTR commandLine, _In_opt_ HWND parent)
VOID WINAPI PathGetShortPath(_Inout_updates_(MAX_PATH) LPWSTR pszPath)
int WINAPI RestartDialog(_In_opt_ HWND, _In_opt_ LPCWSTR, DWORD)
HRESULT WINAPI SHCoCreateInstance(_In_opt_ LPCWSTR, _In_opt_ const CLSID *, _In_opt_ IUnknown *, _In_ REFIID, _Outptr_ LPVOID *)
PIDLIST_ABSOLUTE WINAPI SHSimpleIDListFromPath(PCWSTR)
PIDLIST_ABSOLUTE WINAPI ILCreateFromPathW(_In_ PCWSTR)
VOID WINAPI SHSetInstanceExplorer(_In_opt_ IUnknown *)
static const WCHAR CFSTR_FILEDESCRIPTORW[]
static const WCHAR CFSTR_PERSISTEDDATAOBJECTW[]
HRESULT WINAPI SHGetDataFromIDListW(_In_ LPSHELLFOLDER psf, _In_ PCUITEMID_CHILD pidl, int nFormat, _Out_writes_bytes_(cb) LPVOID pv, int cb)
HPSXA WINAPI SHCreatePropSheetExtArrayEx(HKEY, LPCWSTR, UINT, IDataObject *)
struct tagBROWSEINFOW BROWSEINFOW
BOOL WINAPI SHChangeNotifyDeregister(ULONG ulID)
HRESULT WINAPI SHLimitInputEdit(_In_ HWND hwnd, _In_ IShellFolder *folder)
static const WCHAR CFSTR_LOGICALPERFORMEDDROPEFFECTW[]
int WINAPI SHCreateDirectoryExW(_In_opt_ HWND, _In_ LPCWSTR, _In_opt_ LPSECURITY_ATTRIBUTES)
struct tagDATABLOCKHEADER * LPDBLIST
static const WCHAR CFSTR_AUTOPLAY_SHELLIDLISTSW[]
static const WCHAR CFSTR_INETURLW[]
LRESULT WINAPI CallCPLEntry16(HINSTANCE hMod, FARPROC16 pFunc, HWND dw3, UINT dw4, LPARAM dw5, LPARAM dw6)
struct NT_FE_CONSOLE_PROPS * LPNT_FE_CONSOLE_PROPS
#define KF_FLAG_DEFAULT_PATH
struct _SFV_CREATE SFV_CREATE
static const WCHAR CFSTR_FILENAMEMAPW[]
HRESULT WINAPI SHCreateFileExtractIconW(_In_ LPCWSTR pszFile, _In_ DWORD dwFileAttributes, _In_ REFIID riid, _Outptr_ void **ppv)
static const WCHAR CFSTR_TARGETCLSIDW[]
HANDLE WINAPI SHChangeNotification_Lock(_In_ HANDLE hChangeNotification, DWORD dwProcessId, _Outptr_opt_result_buffer_(2) _Outptr_opt_result_buffer_(2) PIDLIST_ABSOLUTE **pppidl, _Out_opt_ LONG *plEvent)
HRESULT WINAPI SHGetFolderLocation(_Reserved_ HWND hwndOwner, _In_ int nFolder, _In_opt_ HANDLE hToken, _In_ DWORD dwReserved, _Outptr_ PIDLIST_ABSOLUTE *ppidl)
static const WCHAR CFSTR_DRAGCONTEXTW[]
HRESULT(CALLBACK * LPFNDFMCALLBACK)(_In_opt_ IShellFolder *, _In_opt_ HWND, _In_opt_ IDataObject *, UINT, WPARAM, LPARAM)
PIDLIST_ABSOLUTE WINAPI SHCloneSpecialIDList(_Reserved_ HWND hwnd, _In_ int csidl, _In_ BOOL fCreate)
INT(CALLBACK * BFFCALLBACK)(HWND, UINT, LPARAM, LPARAM)
BOOL WINAPI PathMakeUniqueName(_Out_ PWSTR pszUniqueName, _In_ UINT cchMax, _In_ PCWSTR pszTemplate, _In_opt_ PCWSTR pszLongPlate, _In_opt_ PCWSTR pszDir)
@ REST_PROMPTRUNASINSTALLNETPATH
@ REST_BITBUCKCONFIRMDELETE
@ REST_ALLOWUNHASHEDWEBVIEW
@ REST_DONTSHOWSUPERHIDDEN
@ REST_ARP_DONTGROUPPATCHES
@ REST_NORUNASINSTALLPROMPT
@ REST_NOCUSTOMIZEWEBVIEW
@ REST_NOSETACTIVEDESKTOP
@ REST_NOCURRENTUSERRUNONCE
@ REST_NOCLOSE_DRAGDROPBAND
@ REST_DONTRETRYBADNETNAME
@ REST_FORCESTARTMENULOGOFF
@ REST_NOENUMENTIRENETWORK
@ REST_INHERITCONSOLEHANDLES
@ REST_NONETCONNECTDISCONNECT
@ REST_NOCONTROLPANELBARRICADE
@ REST_NOFORGETSOFTWAREUPDATE
@ REST_BITBUCKNUKEONDELETE
@ REST_ALLOWLEGACYWEBVIEW
@ REST_NOCUSTOMIZETHISFOLDER
@ REST_NOTOOLBARSONTASKBAR
@ REST_NOREMOTERECURSIVEEVENTS
@ REST_NOCHANGEMAPPEDDRIVELABEL
@ REST_NOMANAGEMYCOMPUTERVERB
@ REST_NOUSERNAMEINSTARTPANEL
@ REST_NOVISUALSTYLECHOICE
@ REST_NORECENTDOCSHISTORY
@ REST_SEPARATEDESKTOPPROCESS
@ REST_NOTRAYITEMSDISPLAY
@ REST_NOSMCONFIGUREPROGRAMS
@ REST_NOLOCALMACHINERUNONCE
@ REST_NOACTIVEDESKTOPCHANGES
@ REST_ARP_NOWINSETUPPAGE
@ REST_NOREMOTECHANGENOTIFY
@ REST_NOSHELLSEARCHBUTTON
@ REST_NOONLINEPRINTSWIZARD
@ REST_ARP_NOCHOOSEPROGRAMSPAGE
@ REST_NOCHANGEMAPPEDDRIVECOMMENT
@ REST_REVERTWEBVIEWSECURITY
@ REST_NONETWORKCONNECTIONS
@ REST_NOLOWDISKSPACECHECKS
@ REST_NOCHANGINGWALLPAPER
@ REST_ALLOWFILECLSIDJUNCTIONS
@ REST_NOSTARTMENUSUBFOLDERS
@ REST_FORCECOPYACLWITHFILE
@ REST_NODISPSCREENSAVEPG
@ REST_LINKRESOLVEIGNORELINKINFO
@ REST_NONLEGACYSHELLMODE
@ REST_NODISPLAYAPPEARANCEPAGE
@ REST_NODISPSCREENSAVEPREVIEW
@ REST_NODRIVETYPEAUTORUN
@ REST_STARTRUNNOHOMEPATH
@ REST_NOINTERNETOPENWITH
@ REST_CLEARRECENTDOCSONEXIT
@ REST_ALLOWBITBUCKDRIVES
@ REST_ALLOWCOMMENTTOGGLE
@ REST_FORCEACTIVEDESKTOPON
@ REST_ENFORCESHELLEXTSECURITY
PUIDLIST_RELATIVE WINAPI ILFindChild(_In_ PIDLIST_ABSOLUTE, _In_ PCIDLIST_ABSOLUTE)
struct EXP_SPECIAL_FOLDER * LPEXP_SPECIAL_FOLDER
PIDLIST_RELATIVE WINAPI ILClone(_In_ PCUIDLIST_RELATIVE)
struct _FILEDESCRIPTORA FILEDESCRIPTORA
static const WCHAR CFSTR_SHELLIDLISTW[]
HRESULT WINAPI SHSetFolderPathA(_In_ INT csidl, _In_ HANDLE hToken, _In_ DWORD dwFlags, _In_ LPCSTR pszPath)
struct _SHChangeNotifyEntry SHChangeNotifyEntry
struct _QCMINFO_IDMAP_PLACEMENT QCMINFO_IDMAP_PLACEMENT
BOOL WINAPI DAD_DragLeave(void)
VOID WINAPI SHUpdateImageA(_In_ LPCSTR, INT, UINT, INT)
void WINAPI ILFree(_In_opt_ PIDLIST_RELATIVE)
struct EXP_SZ_LINK * LPEXP_SZ_LINK
HRESULT WINAPI SHCreateDataObject(_In_opt_ PCIDLIST_ABSOLUTE pidlFolder, _In_ UINT cidl, _In_reads_opt_(cidl) PCUITEMID_CHILD_ARRAY apidl, _In_opt_ IDataObject *pdtInner, _In_ REFIID riid, _Outptr_ void **ppv)
struct _DROPFILES * LPDROPFILES
struct _SFVM_PROPPAGE_DATA * LPSFVM_PROPPAGE_DATA
struct _SHChangeProductKeyAsIDList * LPSHChangeProductKeyAsIDList
HRESULT WINAPI SHDefExtractIconA(_In_ LPCSTR pszIconFile, int iIndex, UINT uFlags, _Out_opt_ HICON *phiconLarge, _Out_opt_ HICON *phiconSmall, UINT nIconSize)
VOID WINAPI SHGetSettings(_Out_ LPSHELLFLAGSTATE lpsfs, DWORD dwMask)
HRESULT WINAPI ILSaveToStream(_In_ LPSTREAM, _In_ PCUIDLIST_RELATIVE)
HRESULT WINAPI SHCreateShellFolderViewEx(_In_ LPCSFV pshfvi, _Outptr_ IShellView **ppshv)
DWORD WINAPI SHRestricted(RESTRICTIONS rest)
_Check_return_ HRESULT WINAPI SHGetInstanceExplorer(_Outptr_ IUnknown **)
HRESULT WINAPI SHPathPrepareForWriteA(_In_opt_ HWND, _In_opt_ IUnknown *, _In_ LPCSTR, DWORD)
DWORD WINAPI SHFormatDrive(_In_ HWND, UINT, UINT, UINT)
ULONG WINAPI SHChangeNotifyRegister(_In_ HWND hwnd, int fSources, LONG fEvents, UINT wMsg, int cEntries, _In_ SHChangeNotifyEntry *pshcne)
static const WCHAR CFSTR_PERFORMEDDROPEFFECTW[]
ITEMID_CHILD UNALIGNED * PUITEMID_CHILD
const PCUITEMID_CHILD * PCUITEMID_CHILD_ARRAY
const ITEMID_CHILD UNALIGNED * PCUITEMID_CHILD
const PCUIDLIST_RELATIVE * PCUIDLIST_RELATIVE_ARRAY
const ITEMIDLIST_RELATIVE UNALIGNED * PCUIDLIST_RELATIVE
const ITEMIDLIST UNALIGNED * LPCITEMIDLIST
ITEMIDLIST_RELATIVE UNALIGNED * PUIDLIST_RELATIVE
BOOL ApplyChanges(HWND hwndDlg)
BOOL fAdminsCreateCommonGroups
BOOL fDoubleClickInWebView
BOOL fDoubleClickInWebView
LPSTR pszWebViewTemplateVersion
LPWSTR pszWebViewTemplateVersion
LPWSTR pszWebViewTemplate
LPFNVIEWCALLBACK pfnCallback
FILETIME ftLastAccessTime
WCHAR cFileName[MAX_PATH]
FILETIME ftLastAccessTime
QCMINFO_IDMAP_PLACEMENT pIdList[1]
QCMINFO_IDMAP const * pIdMap
IShellFolderViewCB * psfvcb
PCIDLIST_ABSOLUTE pidlRoot
PCIDLIST_ABSOLUTE pidlRoot
OPEN_AS_INFO_FLAGS oaifInFlags
_Inout_ PERBANDINFO * pbi
_In_ SURFOBJ _In_ CLIPOBJ * pco
LRESULT(CALLBACK * FARPROC16)()
#define DECL_WINELIB_TYPE_AW(type)
_In_ UINT _In_ UINT cEntries
#define INTERNET_MAX_URL_LENGTH
HWND WINAPI GetWindow(_In_ HWND, _In_ UINT)