22#ifndef __SHLOBJ_UNDOC__H
23#define __SHLOBJ_UNDOC__H
56#define INTERFACE IInitializeObject
67#if !defined(__cplusplus) || defined(CINTERFACE)
68#define IInitializeObject_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
69#define IInitializeObject_AddRef(T) (T)->lpVtbl->AddRef(T)
70#define IInitializeObject_Release(T) (T)->lpVtbl->Release(T)
71#define IInitializeObject_Initialize(T) (T)->lpVtbl->Initialize(T)
83#define INTERFACE IBanneredBar
98#if !defined(__cplusplus) || defined(CINTERFACE)
99#define IBanneredBar_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
100#define IBanneredBar_AddRef(T) (T)->lpVtbl->AddRef(T)
101#define IBanneredBar_Release(T) (T)->lpVtbl->Release(T)
102#define IBanneredBar_SetIconSize(T,a) (T)->lpVtbl->SetIconSize(T,a)
103#define IBanneredBar_GetIconSize(T,a) (T)->lpVtbl->GetIconSize(T,a)
104#define IBanneredBar_SetBitmap(T,a) (T)->lpVtbl->SetBitmap(T,a)
105#define IBanneredBar_GetBitmap(T,a) (T)->lpVtbl->GetBitmap(T,a)
117#define INTERFACE IGlobalFolderSettings
133#define INTERFACE IStartMenuCallback
151#define IStartMenuCallback_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
152#define IStartMenuCallback_AddRef(T) (T)->lpVtbl->AddRef(T)
153#define IStartMenuCallback_Release(T) (T)->lpVtbl->Release(T)
154#define IStartMenuCallback_GetWindow(T,a) (T)->lpVtbl->GetWindow(T,a)
155#define IStartMenuCallback_ContextSensitiveHelp(T,a) (T)->lpVtbl->ContextSensitiveHelp(T,a)
156#define IStartMenuCallback_Execute(T,a,b) (T)->lpVtbl->Execute(T,a,b)
157#define IStartMenuCallback_Unknown(T,a,b,c,d) (T)->lpVtbl->Unknown(T,a,b,c,d)
158#define IStartMenuCallback_AppendMenu(T,a) (T)->lpVtbl->AppendMenu(T,a)
164#define INTERFACE IBandSiteStreamCallback
178#define IBandSiteStreamCallback_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
179#define IBandSiteStreamCallback_AddRef(T) (T)->lpVtbl->AddRef(T)
180#define IBandSiteStreamCallback_Release(T) (T)->lpVtbl->Release(T)
181#define IBandSiteStreamCallback_OnLoad(T,a,b,c) (T)->lpVtbl->OnLoad(T,a,b,c)
182#define IBandSiteStreamCallback_OnSave(T,a,b) (T)->lpVtbl->OnSave(T,a,b)
188#define INTERFACE IShellDesktopTray
204#define IShellDesktopTray_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
205#define IShellDesktopTray_AddRef(T) (T)->lpVtbl->AddRef(T)
206#define IShellDesktopTray_Release(T) (T)->lpVtbl->Release(T)
207#define IShellDesktopTray_GetState(T) (T)->lpVtbl->GetState(T)
208#define IShellDesktopTray_GetTrayWindow(T,a) (T)->lpVtbl->GetTrayWindow(T,a)
209#define IShellDesktopTray_RegisterDesktopWindow(T,a) (T)->lpVtbl->RegisterDesktopWindow(T,a)
210#define IShellDesktopTray_Unknown(T,a,b) (T)->lpVtbl->Unknown(T,a,b)
216#define INTERFACE INscTree
229 STDMETHOD(SetSelectedItem)(
THIS_ long paramC,
long param10,
long param14,
long param18)
PURE;
233 STDMETHOD(BindToSelectedItemParent)(
THIS_ long paramC,
long param10,
long param14)
PURE;
241#define INscTree_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
242#define INscTree_AddRef(T) (T)->lpVtbl->AddRef(T)
243#define INscTree_Release(T) (T)->lpVtbl->Release(T)
244#define INscTree_CreateTree(T,a,b,c) (T)->lpVtbl->CreateTree(T,a,b,c)
245#define INscTree_Initialize(T,a,b,c) (T)->lpVtbl->Initialize(T,a,b,c)
246#define INscTree_ShowWindow(T,a) (T)->lpVtbl->ShowWindow(T,a)
247#define INscTree_Refresh(T) (T)->lpVtbl->Refresh(T)
248#define INscTree_GetSelectedItem(T,a,b) (T)->lpVtbl->GetSelectedItem(T,a,b)
249#define INscTree_SetSelectedItem(T,a,b,c,d) (T)->lpVtbl->SetSelectedItem(T,a,b,c,d)
250#define INscTree_GetNscMode(T,a) (T)->lpVtbl->GetNscMode(T,a)
251#define INscTree_SetNscMode(T,a) (T)->lpVtbl->SetNscMode(T,a)
252#define INscTree_GetSelectedItemName(T,a,b) (T)->lpVtbl->GetSelectedItemName(T,a,b)
253#define INscTree_BindToSelectedItemParent(T,a,b,c) (T)->lpVtbl->BindToSelectedItemParent(T,a,b,c)
254#define INscTree_InLabelEdit(T) (T)->lpVtbl->InLabelEdit(T)
255#define INscTree_RightPaneNavigationStarted(T,a) (T)->lpVtbl->RightPaneNavigationStarted(T,a)
256#define INscTree_RightPaneNavigationFinished(T,a) (T)->lpVtbl->RightPaneNavigationFinished(T,a)
262#define INTERFACE INscTree2
275 STDMETHOD(SetSelectedItem)(
THIS_ long paramC,
long param10,
long param14,
long param18)
PURE;
279 STDMETHOD(BindToSelectedItemParent)(
THIS_ long paramC,
long param10,
long param14)
PURE;
284 STDMETHOD(CreateTree2)(
THIS_ long paramC,
long param10,
long param14,
long param18)
PURE;
289#define INscTree2_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
290#define INscTree2_AddRef(T) (T)->lpVtbl->AddRef(T)
291#define INscTree2_Release(T) (T)->lpVtbl->Release(T)
292#define INscTree2_CreateTree(T,a,b,c) (T)->lpVtbl->CreateTree(T,a,b,c)
293#define INscTree2_Initialize(T,a,b,c) (T)->lpVtbl->Initialize(T,a,b,c)
294#define INscTree2_ShowWindow(T,a) (T)->lpVtbl->ShowWindow(T,a)
295#define INscTree2_Refresh(T) (T)->lpVtbl->Refresh(T)
296#define INscTree2_GetSelectedItem(T,a,b) (T)->lpVtbl->GetSelectedItem(T,a,b)
297#define INscTree2_SetSelectedItem(T,a,b,c,d) (T)->lpVtbl->SetSelectedItem(T,a,b,c,d)
298#define INscTree2_GetNscMode(T,a) (T)->lpVtbl->GetNscMode(T,a)
299#define INscTree2_SetNscMode(T,a) (T)->lpVtbl->SetNscMode(T,a)
300#define INscTree2_GetSelectedItemName(T,a,b) (T)->lpVtbl->GetSelectedItemName(T,a,b)
301#define INscTree2_BindToSelectedItemParent(T,a,b,c) (T)->lpVtbl->BindToSelectedItemParent(T,a,b,c)
302#define INscTree2_InLabelEdit(T) (T)->lpVtbl->InLabelEdit(T)
303#define INscTree2_RightPaneNavigationStarted(T,a) (T)->lpVtbl->RightPaneNavigationStarted(T,a)
304#define INscTree2_RightPaneNavigationFinished(T,a) (T)->lpVtbl->RightPaneNavigationFinished(T,a)
305#define INscTree2_CreateTree2(T,a,b,c,d) (T)->lpVtbl->CreateTree2(T,a,b,c,d)
311#define INTERFACE IAddressEditBox
328#define IAddressEditBox_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
329#define IAddressEditBox_AddRef(T) (T)->lpVtbl->AddRef(T)
330#define IAddressEditBox_Release(T) (T)->lpVtbl->Release(T)
331#define IAddressEditBox_Init(T,a,b,c,d) (T)->lpVtbl->Init(T,a,b,c,d)
332#define IAddressEditBox_SetCurrentDir(T,a) (T)->lpVtbl->SetCurrentDir(T,a)
333#define IAddressEditBox_ParseNow(T,a) (T)->lpVtbl->ParseNow(T,a)
334#define IAddressEditBox_Execute(T,a) (T)->lpVtbl->Execute(T,a)
335#define IAddressEditBox_Save(T,a) (T)->lpVtbl->Save(T,a)
341#define INTERFACE IBandProxy
359#define IBandProxy_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
360#define IBandProxy_AddRef(T) (T)->lpVtbl->AddRef(T)
361#define IBandProxy_Release(T) (T)->lpVtbl->Release(T)
362#define IBandProxy_SetSite(T,a) (T)->lpVtbl->SetSite(T,a)
363#define IBandProxy_CreateNewWindow(T,a) (T)->lpVtbl->CreateNewWindow(T,a)
364#define IBandProxy_GetBrowserWindow(T,a) (T)->lpVtbl->GetBrowserWindow(T,a)
365#define IBandProxy_IsConnected(T) (T)->lpVtbl->IsConnected(T)
366#define IBandProxy_NavigateToPIDL(T,a) (T)->lpVtbl->NavigateToPIDL(T,a)
367#define IBandProxy_NavigateToURL(T,a,b) (T)->lpVtbl->NavigateToURL(T,a,b)
373#define INTERFACE IExplorerToolbar
397#define IExplorerToolbar_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
398#define IExplorerToolbar_AddRef(T) (T)->lpVtbl->AddRef(T)
399#define IExplorerToolbar_Release(T) (T)->lpVtbl->Release(T)
400#define IExplorerToolbar_SetCommandTarget(T,a,b,c) (T)->lpVtbl->SetCommandTarget(T,a,b,c)
401#define IExplorerToolbar_Unknown1(T) (T)->lpVtbl->Unknown1(T)
402#define IExplorerToolbar_AddButtons(T,a,b,c) (T)->lpVtbl->AddButtons(T,a,b,c)
403#define IExplorerToolbar_AddString(T,a,b,c,d) (T)->lpVtbl->AddString(T,a,b,c,d)
404#define IExplorerToolbar_GetButton(T,a,b,c) (T)->lpVtbl->GetButton(T,a,b,c)
405#define IExplorerToolbar_GetState(T,a,b,c) (T)->lpVtbl->GetState(T,a,b,c)
406#define IExplorerToolbar_SetState(T,a,b,c) (T)->lpVtbl->SetState(T,a,b,c)
407#define IExplorerToolbar_AddBitmap(T,a,b,c,d,e,f) (T)->lpVtbl->AddBitmap(T,a,b,c,d,e,f)
408#define IExplorerToolbar_GetBitmapSize(T,a) (T)->lpVtbl->GetBitmapSize(T,a)
409#define IExplorerToolbar_SendToolbarMsg(T,a,b,c,d,e) (T)->lpVtbl->SendToolbarMsg(T,a,b,c,d,e)
410#define IExplorerToolbar_SetImageList(T,a,b,c,d) (T)->lpVtbl->SetImageList(T,a,b,c,d)
411#define IExplorerToolbar_ModifyButton(T,a,b,c) (T)->lpVtbl->ModifyButton(T,a,b,c)
425#define INTERFACE IRegTreeOptions
441#define IRegTreeOptions_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
442#define IRegTreeOptions_AddRef(T) (T)->lpVtbl->AddRef(T)
443#define IRegTreeOptions_Release(T) (T)->lpVtbl->Release(T)
444#define IRegTreeOptions_InitTree(T,a,b,c,d) (T)->lpVtbl->InitTree(T,a,b,c,d)
445#define IRegTreeOptions_WalkTree(T,a) (T)->lpVtbl->WalkTree(T,a)
446#define IRegTreeOptions_ToggleItem(T,a) (T)->lpVtbl->ToggleItem(T,a)
447#define IRegTreeOptions_ShowHelp(T,a,b) (T)->lpVtbl->ShowHelp(T,a,b)
453#define INTERFACE IBandNavigate
466#define IBandNavigate_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
467#define IBandNavigate_AddRef(T) (T)->lpVtbl->AddRef(T)
468#define IBandNavigate_Release(T) (T)->lpVtbl->Release(T)
469#define IBandNavigate_Select(T,a) (T)->lpVtbl->Select(T,a)
475#define INTERFACE INamespaceProxy
492#define INamespaceProxy_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
493#define INamespaceProxy_AddRef(T) (T)->lpVtbl->AddRef(T)
494#define INamespaceProxy_Release(T) (T)->lpVtbl->Release(T)
495#define INamespaceProxy_GetNavigateTarget(T,a,b,c) (T)->lpVtbl->GetNavigateTarget(T,a,b,c)
496#define INamespaceProxy_Invoke(T,a) (T)->lpVtbl->Invoke(T,a)
497#define INamespaceProxy_OnSelectionChanged(T,a) (T)->lpVtbl->OnSelectionChanged(T,a)
498#define INamespaceProxy_RefreshFlags(T,a,b,c) (T)->lpVtbl->RefreshFlags(T,a,b,c)
499#define INamespaceProxy_CacheItem(T,a) (T)->lpVtbl->CacheItem(T,a)
505#define INTERFACE IShellMenu2
532#define IShellMenu2_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
533#define IShellMenu2_AddRef(T) (T)->lpVtbl->AddRef(T)
534#define IShellMenu2_Release(T) (T)->lpVtbl->Release(T)
535#define IShellMenu2_Initialize(T,a,b,c,d) (T)->lpVtbl->Initialize(T,a,b,c,d)
536#define IShellMenu2_GetMenuInfo(T,a,b,c,d) (T)->lpVtbl->GetMenuInfo(T,a,b,c,d)
537#define IShellMenu2_SetShellFolder(T,a,b,c,d) (T)->lpVtbl->SetShellFolder(T,a,b,c,d)
538#define IShellMenu2_GetShellFolder(T,a,b,c,d) (T)->lpVtbl->GetShellFolder(T,a,b,c,d)
539#define IShellMenu2_SetMenu(T,a,b,c) (T)->lpVtbl->SetMenu(T,a,b,c)
540#define IShellMenu2_GetMenu(T,a,b,c) (T)->lpVtbl->GetMenu(T,a,b,c)
541#define IShellMenu2_InvalidateItem(T,a,b) (T)->lpVtbl->InvalidateItem(T,a,b)
542#define IShellMenu2_GetState(T,a) (T)->lpVtbl->GetState(T,a)
543#define IShellMenu2_SetMenuToolbar(T,a,b) (T)->lpVtbl->SetMenuToolbar(T,a,b)
544#define IShellMenu2_GetSubMenu(T) (T)->lpVtbl->GetSubMenu(T)
545#define IShellMenu2_SetToolbar(T) (T)->lpVtbl->SetToolbar(T)
546#define IShellMenu2_SetMinWidth(T) (T)->lpVtbl->SetMinWidth(T)
547#define IShellMenu2_SetNoBorder(T) (T)->lpVtbl->SetNoBorder(T)
548#define IShellMenu2_SetTheme(T) (T)->lpVtbl->SetTheme(T)
554#define INTERFACE IWinEventHandler
568#define IWinEventHandler_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
569#define IWinEventHandler_AddRef(T) (T)->lpVtbl->AddRef(T)
570#define IWinEventHandler_Release(T) (T)->lpVtbl->Release(T)
571#define IWinEventHandler_OnWinEvent(T,a,b,c,d,e) (T)->lpVtbl->OnWinEvent(T,a,b,c,d,e)
572#define IWinEventHandler_IsWindowOwner(T,a) (T)->lpVtbl->IsWindowOwner(T,a)
578#define INTERFACE IAddressBand
592#define IAddressBand_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
593#define IAddressBand_AddRef(T) (T)->lpVtbl->AddRef(T)
594#define IAddressBand_Release(T) (T)->lpVtbl->Release(T)
595#define IAddressBand_FileSysChange(T,a,b) (T)->lpVtbl->FileSysChange(T,a,b)
596#define IAddressBand_Refresh(T,a) (T)->lpVtbl->Refresh(T,a)
602#define INTERFACE IShellMenuAcc
622#define IShellMenuAcc_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
623#define IShellMenuAcc_AddRef(T) (T)->lpVtbl->AddRef(T)
624#define IShellMenuAcc_Release(T) (T)->lpVtbl->Release(T)
625#define IShellMenuAcc_GetTop(T) (T)->lpVtbl->GetTop(T)
626#define IShellMenuAcc_GetBottom(T) (T)->lpVtbl->GetBottom(T)
627#define IShellMenuAcc_GetTracked(T) (T)->lpVtbl->GetTracked(T)
628#define IShellMenuAcc_GetParentSite(T) (T)->lpVtbl->GetParentSite(T)
629#define IShellMenuAcc_GetState(T) (T)->lpVtbl->GetState(T)
630#define IShellMenuAcc_DoDefaultAction(T) (T)->lpVtbl->DoDefaultAction(T)
631#define IShellMenuAcc_GetSubMenu(T) (T)->lpVtbl->GetSubMenu(T)
632#define IShellMenuAcc_IsEmpty(T) (T)->lpVtbl->IsEmpty(T)
638#define INTERFACE IBandSiteHelper
652#define IBandSiteHelper_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
653#define IBandSiteHelper_AddRef(T) (T)->lpVtbl->AddRef(T)
654#define IBandSiteHelper_Release(T) (T)->lpVtbl->Release(T)
655#define IBandSiteHelper_LoadFromStreamBS(T,a,b) (T)->lpVtbl->LoadFromStreamBS(T,a,b)
656#define IBandSiteHelper_SaveToStreamBS(T,a,b) (T)->lpVtbl->SaveToStreamBS(T,a,b)
662#define INTERFACE IShellBrowserService
675#define IShellBrowserService_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
676#define IShellBrowserService_AddRef(T) (T)->lpVtbl->AddRef(T)
677#define IShellBrowserService_Release(T) (T)->lpVtbl->Release(T)
678#define IShellBrowserService_GetPropertyBag(T,a,b,c) (T)->lpVtbl->GetPropertyBag(T,a,b,c)
684#define INTERFACE ITrayPriv
702#define ITrayPriv_QueryInterface(T,a,b) (T)->lpVtbl->QueryInterface(T,a,b)
703#define ITrayPriv_AddRef(T) (T)->lpVtbl->AddRef(T)
704#define ITrayPriv_Release(T) (T)->lpVtbl->Release(T)
705#define ITrayPriv_GetWindow(T,a) (T)->lpVtbl->GetWindow(T,a)
706#define ITrayPriv_ContextSensitiveHelp(T,a) (T)->lpVtbl->ContextSensitiveHelp(T,a)
707#define ITrayPriv_Execute(T,a,b) (T)->lpVtbl->Execute(T,a,b)
708#define ITrayPriv_Unknown(T,a,b,c,d) (T)->lpVtbl->Unknown(T,a,b,c,d)
709#define ITrayPriv_AppendMenu(T,a) (T)->lpVtbl->AppendMenu(T,a)
ULONG GetBitmapSize(BITMAPINFOHEADER *pbih)
static INT Execute(LPTSTR Full, LPTSTR First, LPTSTR Rest, PARSED_COMMAND *Cmd)
#define DECLARE_INTERFACE_(i, b)
static void *static void *static LPDIRECTPLAY IUnknown * pUnk
NTSTATUS AddBitmap(PNTFS_VCB Vcb, PFILE_RECORD_HEADER FileRecord, PNTFS_ATTR_RECORD AttributeAddress, PCWSTR Name, USHORT NameLength)
return pTarget GetState()
static HRESULT QueryInterface(REFIID, void **)
static LPINTERNAL_BSTR Get(const BSTR lpszString)
static ULONG WINAPI AddRef(IStream *iface)
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
static VOID SetImageList(HWND hwnd)
STDMETHOD() SetIconSize(THIS_ DWORD iIcon) PURE
STDMETHOD() GetBitmap(THIS_ HBITMAP *phBitmap) PURE
STDMETHOD() SetBitmap(THIS_ HBITMAP hBitmap) PURE
HANDLE WINAPI SHCreateDesktop(IShellDesktopTray *)
BOOL WINAPI SHDesktopMessageLoop(HANDLE)
STDMETHOD() GetIconSize(THIS_ DWORD *piIcon) PURE
enum tagWALK_TREE_CMD WALK_TREE_CMD
HRESULT WINAPI SHCreateFileDataObject(PCIDLIST_ABSOLUTE pidlFolder, UINT cidl, PCUITEMID_CHILD_ARRAY apidl, IDataObject *pDataInner, IDataObject **ppDataObj)
ITEMIDLIST UNALIGNED * LPITEMIDLIST
const PCUITEMID_CHILD * PCUITEMID_CHILD_ARRAY
const ITEMIDLIST UNALIGNED * LPCITEMIDLIST
INT GetSelectedItem(HWND hDlgCtrl)
static int Save(const char **args)
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
_In_ void _In_ PCCERT_CONTEXT _In_opt_ LPFILETIME _In_ DWORD _In_ DWORD _Outptr_opt_ void ** ppvObject
BOOL WINAPI SetMenu(_In_ HWND, _In_opt_ HMENU)
BOOL WINAPI ShowWindow(_In_ HWND, _In_ int)
HMENU WINAPI GetSubMenu(_In_ HMENU, _In_ int)
BOOL WINAPI GetMenuInfo(_In_ HMENU, _Inout_ LPMENUINFO)
HWND WINAPI GetWindow(_In_ HWND, _In_ UINT)
HMENU WINAPI GetMenu(_In_ HWND)