From fb1cfa467b578a02b7bc2595903bbc555cc69e34 Mon Sep 17 00:00:00 2001 From: Mark Jansen Date: Sun, 15 May 2016 10:31:15 +0000 Subject: [PATCH] [PSDK] Add missing ICurrentWorkingDirectory definition. CORE-9281 svn path=/trunk/; revision=71333 --- reactos/sdk/include/psdk/shlguid.h | 1 + reactos/sdk/include/psdk/shlobj.h | 24 ++++++++++++++++++++++++ 2 files changed, 25 insertions(+) diff --git a/reactos/sdk/include/psdk/shlguid.h b/reactos/sdk/include/psdk/shlguid.h index e8efc9a4399..151371bd5ac 100644 --- a/reactos/sdk/include/psdk/shlguid.h +++ b/reactos/sdk/include/psdk/shlguid.h @@ -84,6 +84,7 @@ DEFINE_OLEGUID(IID_IQueryInfo, 0x00021500, 0, 0); DEFINE_GUID(IID_IACList, 0x77A130B0,0x94FD,0x11D0,0xA5,0x44,0x00,0xC0,0x4F,0xD7,0xD0,0x62); DEFINE_GUID(IID_IACList2, 0x470141A0,0x5186,0x11D2,0xBB,0xB6,0x00,0x60,0x97,0x7B,0x46,0x4C); DEFINE_GUID(IID_IObjMgr, 0x00BB2761,0x6A77,0x11D0,0xA5,0x35,0x00,0xC0,0x4F,0xD7,0xD0,0x62); +DEFINE_GUID(IID_ICurrentWorkingDirectory, 0x91956D21,0x9276,0x11D1,0x92,0x1A,0x00,0x60,0x97,0xDF,0x5B,0xD4); DEFINE_GUID(IID_IProgressDialog, 0xEBBC7C04,0x315E,0x11D2,0xB6,0x2F,0x00,0x60,0x97,0xDF,0x5B,0xD4); #define SID_SProgressUI CLSID_ProgressDialog diff --git a/reactos/sdk/include/psdk/shlobj.h b/reactos/sdk/include/psdk/shlobj.h index 5e9b98f396b..33f73fa05fc 100644 --- a/reactos/sdk/include/psdk/shlobj.h +++ b/reactos/sdk/include/psdk/shlobj.h @@ -644,6 +644,30 @@ DECLARE_INTERFACE_(IObjMgr,IUnknown) #define IObjMgr_Remove(p,a) (p)->lpVtbl->Remove(p,a) #endif +/* ICurrentWorkingDirectory interface */ +#define INTERFACE ICurrentWorkingDirectory +DECLARE_INTERFACE_(ICurrentWorkingDirectory,IUnknown) +{ + /*** IUnknown methods ***/ + STDMETHOD_(HRESULT,QueryInterface) (THIS_ REFIID riid, void** ppvObject) PURE; + STDMETHOD_(ULONG,AddRef) (THIS) PURE; + STDMETHOD_(ULONG,Release) (THIS) PURE; + /*** ICurrentWorkingDirectory methods ***/ + STDMETHOD(GetDirectory)(THIS_ _Out_writes_(cchSize) PWSTR pwzPath, DWORD cchSize); + STDMETHOD(SetDirectory)(THIS_ _In_ PCWSTR pwzPath) PURE; +}; +#undef INTERFACE + +#if !defined(__cplusplus) || defined(CINTERFACE) +/*** IUnknown methods ***/ +#define ICurrentWorkingDirectory_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) +#define ICurrentWorkingDirectory_AddRef(p) (p)->lpVtbl->AddRef(p) +#define ICurrentWorkingDirectory_Release(p) (p)->lpVtbl->Release(p) +/*** ICurrentWorkingDirectory methods ***/ +#define ICurrentWorkingDirectory_GetDirectory(p,a,b) (p)->lpVtbl->GetDirectory(p,a,b) +#define ICurrentWorkingDirectory_SetDirectory(p,a) (p)->lpVtbl->SetDirectory(p,a) +#endif + /* IACList interface */ #define INTERFACE IACList DECLARE_INTERFACE_(IACList,IUnknown)