⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 shlobj.h

📁 北京大学ACM在线评测系统 OnlineJudge
💻 H
📖 第 1 页 / 共 4 页
字号:
#undef INTERFACE#define INTERFACE IShellViewDECLARE_INTERFACE_(IShellView,IOleWindow){	STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;	STDMETHOD_(ULONG,AddRef)(THIS) PURE;	STDMETHOD_(ULONG,Release)(THIS) PURE;	STDMETHOD(GetWindow)(THIS_ HWND*) PURE;	STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE;	STDMETHOD(TranslateAccelerator) (THIS_ LPMSG) PURE;#ifdef _FIX_ENABLEMODELESS_CONFLICT	STDMETHOD(EnableModelessSV)(THIS_ BOOL) PURE;#else	STDMETHOD(EnableModeless)(THIS_ BOOL) PURE;#endif	STDMETHOD(UIActivate)(THIS_ UINT) PURE;	STDMETHOD(Refresh) (THIS) PURE;	STDMETHOD(CreateViewWindow)(THIS_ IShellView*,LPCFOLDERSETTINGS,LPSHELLBROWSER,RECT*,HWND*) PURE;	STDMETHOD(DestroyViewWindow)(THIS) PURE;	STDMETHOD(GetCurrentInfo)(THIS_ LPFOLDERSETTINGS) PURE;	STDMETHOD(AddPropertySheetPages)(THIS_ DWORD,LPFNADDPROPSHEETPAGE,LPARAM) PURE;	STDMETHOD(SaveViewState)(THIS) PURE;	STDMETHOD(SelectItem)(THIS_ LPCITEMIDLIST,UINT) PURE;	STDMETHOD(GetItemObject)(THIS_ UINT,REFIID,PVOID*) PURE;};#ifdef COBJMACROS#define IShellView_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)#define IShellView_AddRef(T) (T)->lpVtbl->AddRef(T)#define IShellView_Release(T) (T)->lpVtbl->Release(T)#define IShellView_GetWindow(T,a) (T)->lpVtbl->GetWindow(T,a)#define IShellView_ContextSensitiveHelp(T,a) (T)->lpVtbl->ContextSensitiveHelp(T,a)#define IShellView_TranslateAccelerator(T,a) (T)->lpVtbl->TranslateAccelerator(T,a)#ifdef _FIX_ENABLEMODELESS_CONFLICT#define IShellView_EnableModeless(T,a) (T)->lpVtbl->EnableModelessSV(T,a)#else#define IShellView_EnableModeless(T,a) (T)->lpVtbl->EnableModeless(T,a)#endif#define IShellView_UIActivate(T,a) (T)->lpVtbl->UIActivate(T,a)#define IShellView_Refresh(T) (T)->lpVtbl->Refresh(T)#define IShellView_CreateViewWindow(T,a,b,c,d,e) (T)->lpVtbl->CreateViewWindow(T,a,b,c,d,e)#define IShellView_DestroyViewWindow(T) (T)->lpVtbl->DestroyViewWindow(T)#define IShellView_GetCurrentInfo(T,a) (T)->lpVtbl->GetCurrentInfo(T,a)#define IShellView_AddPropertySheetPages(T,a,b,c) (T)->lpVtbl->AddPropertySheetPages(T,a,b,c)#define IShellView_SaveViewState(T) (T)->lpVtbl->SaveViewState(T)#define IShellView_SelectItem(T,a,b) (T)->lpVtbl->SelectItem(T,a,b)#define IShellView_GetItemObject(T,a,b,c) (T)->lpVtbl->GetItemObject(T,a,b,c)#endif#undef INTERFACE#define INTERFACE ICommDlgBrowserDECLARE_INTERFACE_(ICommDlgBrowser,IUnknown){	STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;	STDMETHOD_(ULONG,AddRef)(THIS) PURE;	STDMETHOD_(ULONG,Release)(THIS) PURE;	STDMETHOD(OnDefaultCommand)(THIS_ IShellView*) PURE;	STDMETHOD(OnStateChange)(THIS_ IShellView*,ULONG) PURE;	STDMETHOD(IncludeObject)(THIS_ IShellView*,LPCITEMIDLIST) PURE;};typedef ICommDlgBrowser *LPCOMMDLGBROWSER;#ifdef COBJMACROS#define ICommDlgBrowser_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)#define ICommDlgBrowser_AddRef(T) (T)->lpVtbl->AddRef(T)#define ICommDlgBrowser_Release(T) (T)->lpVtbl->Release(T)#define ICommDlgBrowser_OnDefaultCommand(T,a) (T)->lpVtbl->OnDefaultCommand(T,a)#define ICommDlgBrowser_OnStateChange(T,a,b) (T)->lpVtbl->OnStateChange(T,a,b)#define ICommDlgBrowser_IncludeObject(T,a,b) (T)->lpVtbl->IncludeObject(T,a,b)#endiftypedef GUID SHELLVIEWID;typedef struct _SV2CVW2_PARAMS {	DWORD cbSize;	IShellView *psvPrev;	FOLDERSETTINGS const *pfs;	IShellBrowser *psbOwner;	RECT *prcView;	SHELLVIEWID const *pvid;	HWND hwndView;} SV2CVW2_PARAMS,*LPSV2CVW2_PARAMS;#undef INTERFACE#define INTERFACE IShellView2DECLARE_INTERFACE_(IShellView2,IShellView){	STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;	STDMETHOD_(ULONG,AddRef)(THIS) PURE;	STDMETHOD_(ULONG,Release)(THIS) PURE;	STDMETHOD(GetWindow)(THIS_ HWND*) PURE;	STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE;	STDMETHOD(TranslateAccelerator) (THIS_ LPMSG) PURE;#ifdef _FIX_ENABLEMODELESS_CONFLICT	STDMETHOD(EnableModelessSV)(THIS_ BOOL) PURE;#else	STDMETHOD(EnableModeless)(THIS_ BOOL) PURE;#endif	STDMETHOD(UIActivate)(THIS_ UINT) PURE;	STDMETHOD(Refresh) (THIS) PURE;	STDMETHOD(CreateViewWindow)(THIS_ IShellView*,LPCFOLDERSETTINGS,LPSHELLBROWSER,RECT*,HWND*) PURE;	STDMETHOD(DestroyViewWindow)(THIS) PURE;	STDMETHOD(GetCurrentInfo)(THIS_ LPFOLDERSETTINGS) PURE;	STDMETHOD(AddPropertySheetPages)(THIS_ DWORD,LPFNADDPROPSHEETPAGE,LPARAM) PURE;	STDMETHOD(SaveViewState)(THIS) PURE;	STDMETHOD(SelectItem)(THIS_ LPCITEMIDLIST,UINT) PURE;	STDMETHOD(GetItemObject)(THIS_ UINT,REFIID,PVOID*) PURE;	STDMETHOD(GetView)(THIS_ SHELLVIEWID*,ULONG) PURE;	STDMETHOD(CreateViewWindow2)(THIS_ LPSV2CVW2_PARAMS) PURE;};#undef INTERFACE#define INTERFACE IShellExecuteHookADECLARE_INTERFACE_(IShellExecuteHookA,IUnknown){	STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;	STDMETHOD_(ULONG,AddRef)(THIS) PURE;	STDMETHOD_(ULONG,Release)(THIS) PURE;	STDMETHOD(Execute)(THIS_ LPSHELLEXECUTEINFOA) PURE;};#undef INTERFACE#define INTERFACE IShellExecuteHookWDECLARE_INTERFACE_(IShellExecuteHookW,IUnknown){	STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;	STDMETHOD_(ULONG,AddRef)(THIS) PURE;	STDMETHOD_(ULONG,Release)(THIS) PURE;	STDMETHOD(Execute)(THIS_ LPSHELLEXECUTEINFOW) PURE;};#undef INTERFACE#define INTERFACE IShellIconDECLARE_INTERFACE_(IShellIcon,IUnknown){	STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;	STDMETHOD_(ULONG,AddRef)(THIS) PURE;	STDMETHOD_(ULONG,Release)(THIS) PURE;	STDMETHOD(GetIconOf)(THIS_ LPCITEMIDLIST,UINT,PINT) PURE;};typedef IShellIcon *LPSHELLICON;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;#define SSF_SHOWALLOBJECTS 0x1#define SSF_SHOWEXTENSIONS 0x2#define SSF_SHOWCOMPCOLOR 0x8#define SSF_SHOWSYSFILES 0x20#define SSF_DOUBLECLICKINWEBVIEW 0x80#define SSF_SHOWATTRIBCOL 0x100#define SSF_DESKTOPHTML 0x200#define SSF_WIN95CLASSIC 0x400#define SSF_DONTPRETTYPATH 0x800#define SSF_MAPNETDRVBUTTON 0x1000#define SSF_SHOWINFOTIP 0x2000#define SSF_HIDEICONS 0x4000#define SSF_NOCONFIRMRECYCLE 0x8000#undef  INTERFACE#define INTERFACE IShellIconOverlayIdentifierDECLARE_INTERFACE_(IShellIconOverlayIdentifier,IUnknown){	STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;	STDMETHOD_(ULONG,AddRef)(THIS) PURE;	STDMETHOD_(ULONG,Release)(THIS) PURE;	STDMETHOD(IsMemberOf)(THIS_ LPCWSTR,DWORD) PURE;	STDMETHOD(GetOverlayInfo)(THIS_ LPWSTR,int,int*,DWORD*) PURE;	STDMETHOD(GetPriority)(THIS_ int*) PURE;};#define ISIOI_ICONFILE 0x00000001#define ISIOI_ICONINDEX 0x00000002#if (_WIN32_WINNT >= 0x0500) /* W2K */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;	BOOL fWebView : 1;	BOOL fFilter : 1;	BOOL fShowSuperHidden : 1;	BOOL fNoNetCrawling : 1;	DWORD dwWin95Unused;	UINT uWin95Unused;	LONG lParamSort;	int iSortDirection;	UINT version;	UINT uNotUsed;	BOOL fSepProcess : 1;	BOOL fStartPanelOn : 1;	BOOL fShowStartPage : 1;	UINT fSpareFlags : 13;} SHELLSTATE, *LPSHELLSTATE;#endif /* _WIN32_WINNT >= 0x0500 */#if (_WIN32_IE >= 0x0500)#pragma pack(push,8)typedef struct{	SIZE sizeDragImage;	POINT ptOffset;	HBITMAP hbmpDragImage;	COLORREF crColorKey;} SHDRAGIMAGE, *LPSHDRAGIMAGE;#pragma pack(pop)#undef INTERFACE#define INTERFACE IDragSourceHelperDECLARE_INTERFACE_(IDragSourceHelper, IUnknown){	STDMETHOD (QueryInterface)(THIS_ REFIID riid, void **ppv) PURE;	STDMETHOD_(ULONG, AddRef) (THIS) PURE;	STDMETHOD_(ULONG, Release) (THIS) PURE;	STDMETHOD (InitializeFromBitmap)(THIS_ LPSHDRAGIMAGE pshdi, IDataObject* pDataObject) PURE;	STDMETHOD (InitializeFromWindow)(THIS_ HWND hwnd, POINT* ppt, IDataObject* pDataObject) PURE;};#undef INTERFACE#define INTERFACE IDropTargetHelperDECLARE_INTERFACE_(IDropTargetHelper, IUnknown){	STDMETHOD (QueryInterface)(THIS_ REFIID riid, void** ppv) PURE;	STDMETHOD_(ULONG, AddRef) (THIS) PURE;	STDMETHOD_(ULONG, Release) (THIS) PURE;	STDMETHOD (DragEnter)(THIS_ HWND hwndTarget, IDataObject* pDataObject, POINT* ppt, DWORD dwEffect) PURE;	STDMETHOD (DragLeave)(THIS) PURE;	STDMETHOD (DragOver)(THIS_ POINT* ppt, DWORD dwEffect) PURE;	STDMETHOD (Drop)(THIS_ IDataObject* pDataObject, POINT* ppt, DWORD dwEffect) PURE;	STDMETHOD (Show)(THIS_ BOOL fShow) PURE;};#endif /* _WIN32_IE >= 0x0500 */void WINAPI SHAddToRecentDocs(UINT,PCVOID);LPITEMIDLIST WINAPI SHBrowseForFolderA(PBROWSEINFOA);LPITEMIDLIST WINAPI SHBrowseForFolderW(PBROWSEINFOW);void WINAPI SHChangeNotify(LONG,UINT,PCVOID,PCVOID);HRESULT WINAPI SHGetDataFromIDListA(LPSHELLFOLDER,LPCITEMIDLIST,int,PVOID,int);HRESULT WINAPI SHGetDataFromIDListW(LPSHELLFOLDER,LPCITEMIDLIST,int,PVOID,int);HRESULT WINAPI SHGetDesktopFolder(LPSHELLFOLDER*);HRESULT WINAPI SHGetInstanceExplorer(IUnknown **);HRESULT WINAPI SHGetMalloc(LPMALLOC*);BOOL WINAPI SHGetPathFromIDListA(LPCITEMIDLIST,LPSTR);BOOL WINAPI SHGetPathFromIDListW(LPCITEMIDLIST,LPWSTR);HRESULT WINAPI SHGetSpecialFolderLocation(HWND,int,LPITEMIDLIST*);HRESULT WINAPI SHLoadInProc(REFCLSID);#if (_WIN32_IE >= 0x0400)BOOL WINAPI SHGetSpecialFolderPathA(HWND,LPSTR,int,BOOL);BOOL WINAPI SHGetSpecialFolderPathW(HWND,LPWSTR,int,BOOL);#endif /* SHGetFolderPath in shfolder.dll on W9x, NT4, also in shell32.dll on W2K */HRESULT WINAPI SHGetFolderPathA(HWND,int,HANDLE,DWORD,LPSTR);HRESULT WINAPI SHGetFolderPathW(HWND,int,HANDLE,DWORD,LPWSTR);#if (_WIN32_WINDOWS >= 0x0490) || (_WIN32_WINNT >= 0x0500) /* ME or W2K */HRESULT WINAPI SHGetFolderLocation(HWND,int,HANDLE,DWORD,LPITEMIDLIST*);#endif#if (_WIN32_WINNT >= 0x0500)INT WINAPI SHCreateDirectoryExA(HWND,LPCSTR,LPSECURITY_ATTRIBUTES);INT WINAPI SHCreateDirectoryExW(HWND,LPCWSTR,LPSECURITY_ATTRIBUTES);HRESULT WINAPI SHBindToParent(LPCITEMIDLIST,REFIID,VOID**,LPCITEMIDLIST*);#endif#if (_WIN32_WINNT >= 0x0501) /* XP */HRESULT WINAPI SHGetFolderPathAndSubDirA(HWND,int,HANDLE,DWORD,LPCSTR,LPSTR);HRESULT WINAPI SHGetFolderPathAndSubDirW(HWND,int,HANDLE,DWORD,LPCWSTR,LPWSTR);#endifvoid WINAPI SHGetSettings(LPSHELLFLAGSTATE,DWORD);#if (_WIN32_WINNT >= 0x0500) /* W2K */void WINAPI SHGetSetSettings(LPSHELLSTATE,DWORD,BOOL);#endif#if (_WIN32_WINNT >= 0x0500) /* W2K */BOOL WINAPI ILIsEqual(LPCITEMIDLIST, LPCITEMIDLIST);BOOL WINAPI ILIsParent(LPCITEMIDLIST, LPCITEMIDLIST, BOOL);BOOL WINAPI ILRemoveLastID(LPITEMIDLIST);HRESULT WINAPI ILLoadFromStream(IStream*, LPITEMIDLIST*);HRESULT WINAPI ILSaveToStream(IStream*, LPCITEMIDLIST);LPITEMIDLIST WINAPI ILAppendID(LPITEMIDLIST, LPCSHITEMID, BOOL);LPITEMIDLIST WINAPI ILClone(LPCITEMIDLIST);LPITEMIDLIST WINAPI ILCloneFirst(LPCITEMIDLIST);LPITEMIDLIST WINAPI ILCombine(LPCITEMIDLIST, LPCITEMIDLIST);LPITEMIDLIST WINAPI ILFindChild(LPCITEMIDLIST, LPCITEMIDLIST);LPITEMIDLIST WINAPI ILFindLastID(LPCITEMIDLIST);LPITEMIDLIST WINAPI ILGetNext(LPCITEMIDLIST);UINT WINAPI ILGetSize(LPCITEMIDLIST);void WINAPI ILFree(LPITEMIDLIST);HRESULT WINAPI SHCoCreateInstance(LPCWSTR,REFCLSID,IUnknown*,REFIID,void**);#endif#ifdef UNICODEtypedef IShellExecuteHookW IShellExecuteHook;typedef IShellLinkW IShellLink;typedef BROWSEINFOW BROWSEINFO,*PBROWSEINFO,*LPBROWSEINFO;#define SHBrowseForFolder SHBrowseForFolderW#define SHGetDataFromIDList SHGetDataFromIDListW#define SHGetPathFromIDList SHGetPathFromIDListW#if (_WIN32_IE >= 0x0400)#define SHGetSpecialFolderPath SHGetSpecialFolderPathW#endif#define SHGetFolderPath SHGetFolderPathW #if (_WIN32_WINNT >= 0x0500)#define SHCreateDirectoryEx SHCreateDirectoryExW#endif#if (_WIN32_WINNT >= 0x0501)#define SHGetFolderPathAndSubDir SHGetFolderPathAndSubDirW#endif#define FILEDESCRIPTOR FILEDESCRIPTORW#define LPFILEDESCRIPTOR LPFILEDESCRIPTORW#define FILEGROUPDESCRIPTOR FILEGROUPDESCRIPTORW#define LPFILEGROUPDESCRIPTOR LPFILEGROUPDESCRIPTORW#elsetypedef IShellExecuteHookA IShellExecuteHook;typedef IShellLinkA IShellLink;typedef BROWSEINFOA BROWSEINFO,*PBROWSEINFO,*LPBROWSEINFO;#define SHBrowseForFolder SHBrowseForFolderA#define SHGetDataFromIDList SHGetDataFromIDListA#define SHGetPathFromIDList SHGetPathFromIDListA#if (_WIN32_IE >= 0x0400)#define SHGetSpecialFolderPath SHGetSpecialFolderPathA#endif#define SHGetFolderPath SHGetFolderPathA#if (_WIN32_WINNT >= 0x0500)#define SHCreateDirectoryEx SHCreateDirectoryExA#endif#if (_WIN32_WINNT >= 0x0501)#define SHGetFolderPathAndSubDir SHGetFolderPathAndSubDirA#endif#define FILEDESCRIPTOR FILEDESCRIPTORA#define LPFILEDESCRIPTOR LPFILEDESCRIPTORA#define FILEGROUPDESCRIPTOR FILEGROUPDESCRIPTORA#define LPFILEGROUPDESCRIPTOR LPFILEGROUPDESCRIPTORA#endif /* UNICODE */#pragma pack(pop)#ifdef __cplusplus}#endif#endif /* _SHLOBJ_H */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -