Update to include all of the interfaces in the Platform SDK as of the

XP SP2 version.
This commit is contained in:
Robert Shearman 2005-08-25 09:50:55 +00:00 committed by Alexandre Julliard
parent bcb251d5b3
commit 35dbc147c7
2 changed files with 435 additions and 9 deletions

View File

@ -24,8 +24,14 @@ interface IRunningObjectTable;
interface IMoniker;
interface IAdviseSink;
interface IAsyncManager;
interface ISynchronize;
/* FIXME: COSERVERINFO should be moved here from wtypes.idl */
typedef struct _COSERVERINFO {
DWORD dwReserved1;
LPWSTR pwszName;
COAUTHINFO *pAuthInfo;
DWORD dwReserved2;
} COSERVERINFO;
/******************** Fundamentals ********************/
@ -74,6 +80,16 @@ interface IMarshal : IUnknown
[in] DWORD dwReserved);
}
[
local,
object,
uuid(000001cf-0000-0000-C000-000000000046)
]
interface IMarshal2 : IMarshal
{
typedef [unique] IMarshal2 *LPMARSHAL2;
}
[
local,
object,
@ -1177,6 +1193,56 @@ interface ILayoutStorage : IUnknown
[in] ILockBytes *pILockBytes);
}
[
object,
uuid(30f3d47a-6447-11d1-8e3c-00c04fb9386d)
]
interface IBlockingLock : IUnknown
{
HRESULT Lock(
[in] DWORD dwTimeout);
HRESULT Unlock();
}
[
object,
uuid(bc0bf6ae-8878-11d1-83e9-00c04fc2c6d4)
]
interface ITimeAndNoticeControl : IUnknown
{
HRESULT SuppressChanges(
[in] DWORD res1,
[in] DWORD res2);
}
[
object,
uuid(8d19c834-8879-11d1-83e9-00c04fc2c6d4)
]
interface IOplockStorage: IUnknown
{
HRESULT CreateStorageEx(
[in] LPCWSTR pwcsName,
[in] DWORD grfMode,
[in] DWORD stgfmt,
[in] DWORD grfAttrs,
[in] REFIID riid,
[out, iid_is(riid)] void **ppstgOpen);
HRESULT OpenStorageEx(
[in] LPCWSTR pwcsName,
[in] DWORD grfMode,
[in] DWORD stgfmt,
[in] DWORD grfAttrs,
[in] REFIID riid,
[out, iid_is(riid)] void **ppstgOpen);
}
/******************** Data Object ********************/
[
@ -1698,6 +1764,40 @@ interface IRpcChannelBuffer3 : IRpcChannelBuffer2
[in] IAsyncManager *pAsyncMgr);
}
[
local,
object,
uuid(a5029fb6-3c34-11d1-9c99-00c04fb998aa),
pointer_default(unique)
]
interface IAsyncRpcChannelBuffer : IRpcChannelBuffer2
{
HRESULT Send(
[in, out] RPCOLEMESSAGE *pMsg,
[in] ISynchronize *pSync,
[out] ULONG *pulStatus);
HRESULT Receive(
[in, out] RPCOLEMESSAGE *pMsg,
[out] ULONG *pulStatus);
HRESULT GetDestCtxEx(
[in] RPCOLEMESSAGE *pMsg,
[out] DWORD *pdwDestContext,
[out] void **ppvDestContext);
};
[
local,
object,
uuid(58a08519-24c8-4935-b482-3fd823333a4f)
]
interface IRpcSyntaxNegotiate : IUnknown
{
HRESULT NegotiateSyntax(
[in, out] RPCOLEMESSAGE *pMsg);
}
[
local,
object,
@ -1920,6 +2020,103 @@ interface IAsyncSetup : IUnknown
[out] IAsyncManager **ppAsyncMgr);
}
[
object,
uuid(0e6d4d92-6738-11cf-9608-00aa00680db4)
]
interface IDirectWriterLock : IUnknown
{
HRESULT WaitForWriteAccess(
[in] DWORD dwTimeout);
HRESULT ReleaseWriteAccess();
HRESULT HaveWriteAccess();
}
[
object,
uuid(00000030-0000-0000-C000-000000000046)
]
interface ISynchronize : IUnknown
{
HRESULT Wait(
[in] DWORD dwFlags,
[in] DWORD dwMilliseconds);
HRESULT Signal();
HRESULT Reset();
}
[
local,
object,
uuid(00000031-0000-0000-C000-000000000046)
]
interface ISynchronizeHandle : IUnknown
{
HRESULT GetHandle(
[out] HANDLE *ph);
}
[
local,
object,
uuid(00000032-0000-0000-C000-000000000046)
]
interface ISynchronizeEvent : ISynchronizeHandle
{
HRESULT SetEventHandle(
[in] HANDLE *ph);
}
[
local,
object,
uuid(00000033-0000-0000-C000-000000000046)
]
interface ISynchronizeContainer : IUnknown
{
HRESULT AddSynchronize(
[in] ISynchronize *pSync);
HRESULT WaitMultiple(
[in] DWORD dwFlags,
[in] DWORD dwTimeOut,
[out] ISynchronize **ppSync);
}
[
local,
object,
uuid(00000025-0000-0000-C000-000000000046)
]
interface ISynchronizeMutex : ISynchronize
{
HRESULT ReleaseMutex();
}
[
local,
object,
uuid(00000029-0000-0000-C000-000000000046)
]
interface ICancelMethodCalls : IUnknown
{
typedef [unique] ICancelMethodCalls *LPCANCELMETHODCALLS;
HRESULT Cancel(
[in] ULONG ulSeconds);
HRESULT TestCancel();
}
[
local,
object,
@ -1935,9 +2132,246 @@ interface IAsyncManager : IUnknown
HRESULT CompleteCall(
[in] HRESULT Result);
HRESULT GetCallContext(
[in] REFIID riid,
[out] void **pInterface);
HRESULT GetState(
[out] ULONG *pulStateFlags);
}
[
local,
object,
uuid(1c733a30-2a1c-11ce-ade5-00aa0044773d),
pointer_default(unique)
]
interface ICallFactory : IUnknown
{
HRESULT CreateCall(
[in] REFIID riid,
[in] IUnknown *pCtrlUnk,
[in] REFIID riid2,
[out, iid_is(riid2)] IUnknown **ppv);
}
[
local,
object,
uuid(00000144-0000-0000-C000-000000000046)
]
interface IRpcOptions : IUnknown
{
HRESULT Set(
[in] IUnknown *pPrx,
[in] DWORD dwProperty,
[in] ULONG_PTR dwValue);
HRESULT Query(
[in] IUnknown *pPrx,
[in] DWORD dwProperty,
[out] ULONG_PTR *pdwValue);
}
enum {
COMBND_RPCTIMEOUT = 1,
COMBND_SERVER_LOCALITY = 2
};
enum {
SERVER_LOCALITY_PROCESS_LOCAL = 0,
SERVER_LOCALITY_MACHINE_LOCAL = 1,
SERVER_LOCALITY_REMOTE = 2
};
[
local,
object,
uuid(00000149-0000-0000-C000-000000000046),
pointer_default(unique)
]
interface IRpcHelper : IUnknown
{
HRESULT GetDCOMProtocolVersion(
[out] DWORD *pComVersion);
HRESULT GetIIDFromOBJREF(
[in] void *pObjRef,
[out] IID **piid);
}
[
local,
object,
uuid(eb0cb9e8-7996-11d2-872e-0000f8080859)
]
interface IReleaseMarshalBuffers : IUnknown
{
HRESULT ReleaseMarshalBuffer(
[in] RPCOLEMESSAGE *pMsg,
[in] DWORD dwFlags,
[in, unique] IUnknown *pChnl);
}
[
local,
object,
uuid(0000002B-0000-0000-C000-000000000046)
]
interface IWaitMultiple : IUnknown
{
HRESULT WaitMultiple(
[in] DWORD timeout,
[out] ISynchronize **pSync);
HRESULT AddSynchronize(
[in] ISynchronize *pSync);
}
[
object,
uuid(00000026-0000-0000-C000-000000000046)
]
interface IUrlMon : IUnknown
{
HRESULT AsyncGetClassBits(
[in] REFCLSID rclsid,
[in, unique] LPCWSTR pszTYPE,
[in, unique] LPCWSTR pszExt,
[in] DWORD dwFileVersionMS,
[in] DWORD dwFileVersionLS,
[in, unique] LPCWSTR pszCodeBase,
[in] IBindCtx *pbc,
[in] DWORD dwClassContext,
[in] REFIID riid,
[in] DWORD flags);
}
[
local,
object,
uuid(00000145-0000-0000-C000-000000000046)
]
interface IForegroundTransfer : IUnknown
{
HRESULT AllowForegroundTransfer(
[in] void *lpvReserved);
}
[
local,
object,
uuid(00000147-0000-0000-C000-000000000046)
]
interface IAddrTrackingControl : IUnknown
{
typedef [unique] IAddrTrackingControl *LPADDRTRACKINGCONTROL;
HRESULT EnableCOMDynamicAddrTracking();
HRESULT DisableCOMDynamicAddrTracking();
};
[
local,
object,
uuid(00000148-0000-0000-C000-000000000046)
]
interface IAddrExclusionControl : IUnknown
{
typedef [unique] IAddrExclusionControl *LPADDREXCLUSIONCONTROL;
HRESULT GetCurrentAddrExclusionList(
[in] REFIID riid,
[out, iid_is(riid)] void **ppEnumerator);
HRESULT UpdateAddrExclusionList(
[in] IUnknown *pEnumerator);
};
typedef enum _APTTYPE {
APTTYPE_CURRENT = -1,
APTTYPE_STA = 0,
APTTYPE_MTA = 1,
APTTYPE_NA = 2,
APTTYPE_MAINSTA = 3
} APTTYPE;
typedef enum _THDTYPE {
THDTYPE_BLOCKMESSAGES = 0,
THDTYPE_PROCESSMESSAGES = 1
} THDTYPE;
[
local,
object,
uuid(000001ce-0000-0000-C000-000000000046),
pointer_default(unique)
]
interface IComThreadingInfo : IUnknown
{
HRESULT GetCurrentApartmentType(
[out] APTTYPE *pAptType);
HRESULT GetCurrentThreadType(
[out] THDTYPE *pThreadType);
HRESULT GetCurrentLogicalThreadId(
[out] GUID *pguidLogicalThreadId);
HRESULT SetCurrentLogicalThreadId(
[in] REFGUID rguid);
};
[
object,
pointer_default(unique),
uuid(72380d55-8d2b-43a3-8513-2b6ef31434e9)
]
interface IProcessInitControl : IUnknown
{
HRESULT ResetInitializerTimeout(
[in] DWORD dwSecondsRemaining);
};
[
local,
object,
uuid(00000034-0000-0000-C000-000000000046),
pointer_default(unique)
]
interface IInitializeSpy : IUnknown
{
typedef [unique] IInitializeSpy *LPINITIALIZESPY;
HRESULT PreInitialize(
[in] DWORD dwCoInit,
[in] DWORD dwCurThreadAptRefs);
HRESULT PostInitialize(
[in] HRESULT hrCoInit,
[in] DWORD dwCoInit,
[in] DWORD dwNewThreadAptRefs);
HRESULT PreUninitialize(
[in] DWORD dwCurThreadAptRefs);
HRESULT PostUninitialize(
[in] DWORD dwNewThreadAptRefs);
};
[
object,
uuid(969dc708-5c76-11d1-8d86-0000f804b057)
]
interface IThumbnailExtractor : IUnknown
{
HRESULT ExtractThumbnail(
[in] IStorage *pStg,
[in] ULONG ulLength,
[in] ULONG ulHeight,
[out] ULONG *pulOutputLength,
[out] ULONG *pulOutputHeight,
[out] HBITMAP *phOutputBitmap);
HRESULT OnFileUpdated(
[in] IStorage *pStg);
}

View File

@ -302,14 +302,6 @@ typedef struct _COAUTHINFO {
DWORD dwCapabilities;
} COAUTHINFO;
/* FIXME: COSERVERINFO was in Wine's pre-WIDL wtypes.h, but should be in objidl.idl */
typedef struct _COSERVERINFO {
DWORD dwReserved1;
LPWSTR pwszName;
COAUTHINFO *pAuthInfo;
DWORD dwReserved2;
} COSERVERINFO;
typedef enum tagMEMCTX {
MEMCTX_TASK = 1,
MEMCTX_SHARED = 2,