diff --git a/ctypes_generation/com_parser.py b/ctypes_generation/com_parser.py index 56bf2c67..76b88f7e 100644 --- a/ctypes_generation/com_parser.py +++ b/ctypes_generation/com_parser.py @@ -10,7 +10,7 @@ class WinComParser(Parser): PARAM_INFO = ["__RPC__deref_out", "__RPC__in", "__RPC__deref_out_opt", "__RPC__out", "__RPC__in_opt", "__RPC__deref_opt_inout_opt", "__in", "__out", "__out_opt", "__in_opt", "__inout", "__reserved", "__RPC__in_opt_string", "__RPC__inout_opt", "__RPC__in_string", "__deref_out_opt", "__RPC__inout", - "__RPC__deref_out_opt_string", "_COM_Outptr_", "_In_", "_In_opt_", "_Out_"] + "__RPC__deref_out_opt_string", "_COM_Outptr_", "_In_", "_In_opt_", "_Out_", "__deref_out"] PARAM_INFO_WITH_VALUE = ["__RPC__in_ecount", "__RPC__out_ecount_part", "__RPC__in_ecount_full", "__RPC__in_range", "__RPC__out_ecount_full", "__out_ecount_opt", "__out_ecount", "__in_ecount_opt", "__in_ecount", "__out_bcount_opt", "__out_bcount", "__in_bcount", "__in_bcount_opt", "__RPC__out_ecount_full_string", diff --git a/ctypes_generation/definitions/com/IActivationStageInfo.txt b/ctypes_generation/definitions/com/IActivationStageInfo.txt new file mode 100644 index 00000000..b5f58db9 --- /dev/null +++ b/ctypes_generation/definitions/com/IActivationStageInfo.txt @@ -0,0 +1,30 @@ +typedef struct IActivationStageInfoVtbl +{ + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IActivationStageInfo * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IActivationStageInfo * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IActivationStageInfo * This); + + HRESULT ( STDMETHODCALLTYPE *SetStageAndIndex )( + IActivationStageInfo * This, + /* [in] */ ACTIVATION_STAGE stage, + /* [in] */ int index); + + HRESULT ( STDMETHODCALLTYPE *GetStage )( + IActivationStageInfo * This, + /* [out] */ ACTIVATION_STAGE *pstage); + + HRESULT ( STDMETHODCALLTYPE *GetIndex )( + IActivationStageInfo * This, + /* [out] */ int *pindex); + + END_INTERFACE +} IActivationStageInfoVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/ICallFactory.txt b/ctypes_generation/definitions/com/ICallFactory.txt new file mode 100644 index 00000000..2a60585f --- /dev/null +++ b/ctypes_generation/definitions/com/ICallFactory.txt @@ -0,0 +1,29 @@ +typedef struct ICallFactoryVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ICallFactory * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + __RPC__deref_out void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + ICallFactory * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + ICallFactory * This); + + HRESULT ( STDMETHODCALLTYPE *CreateCall )( + ICallFactory * This, + /* [annotation][in] */ + __in REFIID riid, + /* [annotation][in] */ + __in_opt IUnknown *pCtrlUnk, + /* [annotation][in] */ + __in REFIID riid2, + /* [annotation][iid_is][out] */ + __deref_out IUnknown **ppv); + + END_INTERFACE + } ICallFactoryVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/IClassFactory.txt b/ctypes_generation/definitions/com/IClassFactory.txt new file mode 100644 index 00000000..2497f514 --- /dev/null +++ b/ctypes_generation/definitions/com/IClassFactory.txt @@ -0,0 +1,27 @@ +typedef struct IClassFactoryVtbl +{ + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IClassFactory * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IClassFactory * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IClassFactory * This); + + /* [local] */ HRESULT ( STDMETHODCALLTYPE *CreateInstance )( + IClassFactory * This, + /* [unique][in] */ IUnknown *pUnkOuter, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + /* [local] */ HRESULT ( STDMETHODCALLTYPE *LockServer )( + IClassFactory * This, + /* [in] */ BOOL fLock); + + END_INTERFACE +} IClassFactoryVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/IClientSecurity.txt b/ctypes_generation/definitions/com/IClientSecurity.txt new file mode 100644 index 00000000..dc2d3786 --- /dev/null +++ b/ctypes_generation/definitions/com/IClientSecurity.txt @@ -0,0 +1,63 @@ +typedef struct IClientSecurityVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IClientSecurity * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + __RPC__deref_out void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IClientSecurity * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IClientSecurity * This); + + HRESULT ( STDMETHODCALLTYPE *QueryBlanket )( + IClientSecurity * This, + /* [annotation][in] */ + __in IUnknown *pProxy, + /* [annotation][out] */ + __out DWORD *pAuthnSvc, + /* [annotation][out] */ + __out_opt DWORD *pAuthzSvc, + /* [annotation][out] */ + __RPC__deref_out_opt OLECHAR **pServerPrincName, + /* [annotation][out] */ + __out_opt DWORD *pAuthnLevel, + /* [annotation][out] */ + __out_opt DWORD *pImpLevel, + /* [annotation][out] */ + __deref_out_opt void **pAuthInfo, + /* [annotation][out] */ + __out_opt DWORD *pCapabilites); + + HRESULT ( STDMETHODCALLTYPE *SetBlanket )( + IClientSecurity * This, + /* [annotation][in] */ + __in IUnknown *pProxy, + /* [annotation][in] */ + __in DWORD dwAuthnSvc, + /* [annotation][in] */ + __in DWORD dwAuthzSvc, + /* [annotation][in] */ + __RPC__in_opt OLECHAR *pServerPrincName, + /* [annotation][in] */ + __in DWORD dwAuthnLevel, + /* [annotation][in] */ + __in DWORD dwImpLevel, + /* [annotation][in] */ + __in_opt void *pAuthInfo, + /* [annotation][in] */ + __in DWORD dwCapabilities); + + HRESULT ( STDMETHODCALLTYPE *CopyProxy )( + IClientSecurity * This, + /* [annotation][in] */ + __in IUnknown *pProxy, + /* [annotation][out] */ + __deref_out IUnknown **ppCopy); + + END_INTERFACE + } IClientSecurityVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/IComCatalog.txt b/ctypes_generation/definitions/com/IComCatalog.txt new file mode 100644 index 00000000..17794f29 --- /dev/null +++ b/ctypes_generation/definitions/com/IComCatalog.txt @@ -0,0 +1,74 @@ + typedef struct IComCatalogVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IComCatalog * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IComCatalog * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IComCatalog * This); + + HRESULT ( STDMETHODCALLTYPE *GetClassInfo )( + IComCatalog * This, + /* [in] */ REFGUID guidConfiguredClsid, + /* [in] */ REFIID riid, + /* [out] */ void **ppv); + + HRESULT ( STDMETHODCALLTYPE *GetApplicationInfo )( + IComCatalog * This, + /* [in] */ REFGUID guidApplId, + /* [in] */ REFIID riid, + /* [out] */ void **ppv); + + HRESULT ( STDMETHODCALLTYPE *GetProcessInfo )( + IComCatalog * This, + /* [in] */ REFGUID guidProcess, + /* [in] */ REFIID riid, + /* [out] */ void **ppv); + + HRESULT ( STDMETHODCALLTYPE *GetServerGroupInfo )( + IComCatalog * This, + /* [in] */ REFGUID guidServerGroup, + /* [in] */ REFIID riid, + /* [out] */ void **ppv); + + HRESULT ( STDMETHODCALLTYPE *GetRetQueueInfo )( + IComCatalog * This, + /* [string][in] */ WCHAR *wszFormatName, + /* [in] */ REFIID riid, + /* [out] */ void **ppv); + + HRESULT ( STDMETHODCALLTYPE *GetApplicationInfoForExe )( + IComCatalog * This, + /* [string][in] */ WCHAR *pwszExeName, + /* [in] */ REFIID riid, + /* [out] */ void **ppv); + + HRESULT ( STDMETHODCALLTYPE *GetTypeLibrary )( + IComCatalog * This, + /* [in] */ REFGUID guidTypeLib, + /* [in] */ REFIID riid, + /* [out] */ void **ppv); + + HRESULT ( STDMETHODCALLTYPE *GetInterfaceInfo )( + IComCatalog * This, + /* [in] */ REFIID iidInterface, + /* [in] */ REFIID riid, + /* [out] */ void **ppv); + + HRESULT ( STDMETHODCALLTYPE *FlushCache )( + IComCatalog * This); + + HRESULT ( STDMETHODCALLTYPE *GetClassInfoFromProgId )( + IComCatalog * This, + /* [in] */ WCHAR *pwszProgID, + /* [in] */ REFIID riid, + /* [out] */ void **ppv); + + END_INTERFACE + } IComCatalogVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/IInternalUnknown.txt b/ctypes_generation/definitions/com/IInternalUnknown.txt new file mode 100644 index 00000000..721dc588 --- /dev/null +++ b/ctypes_generation/definitions/com/IInternalUnknown.txt @@ -0,0 +1,22 @@ + typedef struct IInternalUnknownVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IInternalUnknown * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IInternalUnknown * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IInternalUnknown * This); + + HRESULT ( STDMETHODCALLTYPE *QueryInternalInterface )( + IInternalUnknown * This, + /* [in] */ REFIID riid, + /* [out] */ void **ppv); + + END_INTERFACE + } IInternalUnknownVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/IMarshal.txt b/ctypes_generation/definitions/com/IMarshal.txt new file mode 100644 index 00000000..e2c154d7 --- /dev/null +++ b/ctypes_generation/definitions/com/IMarshal.txt @@ -0,0 +1,58 @@ +typedef struct IMarshalVtbl +{ + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IMarshal * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IMarshal * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IMarshal * This); + + HRESULT ( STDMETHODCALLTYPE *GetUnmarshalClass )( + IMarshal * This, + /* [in] */ REFIID riid, + /* [unique][in] */ void *pv, + /* [in] */ DWORD dwDestContext, + /* [unique][in] */ void *pvDestContext, + /* [in] */ DWORD mshlflags, + /* [out] */ CLSID *pCid); + + HRESULT ( STDMETHODCALLTYPE *GetMarshalSizeMax )( + IMarshal * This, + /* [in] */ REFIID riid, + /* [unique][in] */ void *pv, + /* [in] */ DWORD dwDestContext, + /* [unique][in] */ void *pvDestContext, + /* [in] */ DWORD mshlflags, + /* [out] */ DWORD *pSize); + + HRESULT ( STDMETHODCALLTYPE *MarshalInterface )( + IMarshal * This, + /* [unique][in] */ IStream *pStm, + /* [in] */ REFIID riid, + /* [unique][in] */ void *pv, + /* [in] */ DWORD dwDestContext, + /* [unique][in] */ void *pvDestContext, + /* [in] */ DWORD mshlflags); + + HRESULT ( STDMETHODCALLTYPE *UnmarshalInterface )( + IMarshal * This, + /* [unique][in] */ IStream *pStm, + /* [in] */ REFIID riid, + /* [out] */ void **ppv); + + HRESULT ( STDMETHODCALLTYPE *ReleaseMarshalData )( + IMarshal * This, + /* [unique][in] */ IStream *pStm); + + HRESULT ( STDMETHODCALLTYPE *DisconnectObject )( + IMarshal * This, + /* [in] */ DWORD dwReserved); + + END_INTERFACE +} IMarshalVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/Explorer/IMoniker.txt b/ctypes_generation/definitions/com/IMoniker.txt similarity index 100% rename from ctypes_generation/definitions/com/Explorer/IMoniker.txt rename to ctypes_generation/definitions/com/IMoniker.txt diff --git a/ctypes_generation/definitions/com/INetFwRuleVtbl.txt b/ctypes_generation/definitions/com/INetFwRule.txt similarity index 100% rename from ctypes_generation/definitions/com/INetFwRuleVtbl.txt rename to ctypes_generation/definitions/com/INetFwRule.txt diff --git a/ctypes_generation/definitions/com/INetFwRulesVtbl.txt b/ctypes_generation/definitions/com/INetFwRules.txt similarity index 100% rename from ctypes_generation/definitions/com/INetFwRulesVtbl.txt rename to ctypes_generation/definitions/com/INetFwRules.txt diff --git a/ctypes_generation/definitions/com/IObjContext.txt b/ctypes_generation/definitions/com/IObjContext.txt new file mode 100644 index 00000000..139e60f6 --- /dev/null +++ b/ctypes_generation/definitions/com/IObjContext.txt @@ -0,0 +1,67 @@ +typedef struct IObjContextVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IObjContext * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IObjContext * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IObjContext * This); + + HRESULT ( STDMETHODCALLTYPE *SetProperty )( + IObjContext * This, + /* [annotation][in] */ + __in REFGUID rpolicyId, + /* [annotation][in] */ + __in CPFLAGS flags, + /* [annotation][in] */ + __in IUnknown *pUnk); + + HRESULT ( STDMETHODCALLTYPE *RemoveProperty )( + IObjContext * This, + /* [annotation][in] */ + __in REFGUID rPolicyId); + + HRESULT ( STDMETHODCALLTYPE *GetProperty )( + IObjContext * This, + /* [annotation][in] */ + __in REFGUID rGuid, + /* [annotation][out] */ + __out CPFLAGS *pFlags, + /* [annotation][out] */ + __deref_out IUnknown **ppUnk); + + HRESULT ( STDMETHODCALLTYPE *EnumContextProps )( + IObjContext * This, + /* [annotation][out] */ + __deref_out IEnumContextProps **ppEnumContextProps); + + PVOID ( STDMETHODCALLTYPE *Reserved1 )( + IObjContext * This); + + PVOID ( STDMETHODCALLTYPE *Reserved2 )( + IObjContext * This); + + PVOID ( STDMETHODCALLTYPE *Reserved3 )( + IObjContext * This); + + PVOID ( STDMETHODCALLTYPE *Reserved4 )( + IObjContext * This); + + PVOID ( STDMETHODCALLTYPE *Reserved5 )( + IObjContext * This); + + PVOID ( STDMETHODCALLTYPE *Reserved6 )( + IObjContext * This); + + PVOID ( STDMETHODCALLTYPE *Reserved7 )( + IObjContext * This); + + END_INTERFACE + } IObjContextVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/IRemUnknown.txt b/ctypes_generation/definitions/com/IRemUnknown.txt new file mode 100644 index 00000000..0719c12e --- /dev/null +++ b/ctypes_generation/definitions/com/IRemUnknown.txt @@ -0,0 +1,36 @@ + typedef struct IRemUnknownVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IRemUnknown * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IRemUnknown * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IRemUnknown * This); + + HRESULT ( STDMETHODCALLTYPE *RemQueryInterface )( + IRemUnknown * This, + /* [in] */ REFIPID ripid, + /* [in] */ ULONG cRefs, + /* [in] */ USHORT cIids, + /* [size_is][in] */ IID *iids, + /* [size_is][size_is][out] */ REMQIRESULT **ppQIResults); + + HRESULT ( STDMETHODCALLTYPE *RemAddRef )( + IRemUnknown * This, + /* [in] */ USHORT cInterfaceRefs, + /* [size_is][in] */ REMINTERFACEREF *InterfaceRefs, + /* [size_is][out] */ HRESULT *pResults); + + HRESULT ( STDMETHODCALLTYPE *RemRelease )( + IRemUnknown * This, + /* [in] */ USHORT cInterfaceRefs, + /* [size_is][in] */ REMINTERFACEREF *InterfaceRefs); + + END_INTERFACE + } IRemUnknownVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/IStdIdentity.txt b/ctypes_generation/definitions/com/IStdIdentity.txt new file mode 100644 index 00000000..86b8bee8 --- /dev/null +++ b/ctypes_generation/definitions/com/IStdIdentity.txt @@ -0,0 +1,20 @@ +// IStdIdentity is an empty interface to check that an object is the IStdIdentity +// and thus query other interface +typedef struct IStdIdentityVtbl +{ + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IUnknown * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + __RPC__deref_out void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IUnknown * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IUnknown * This); + + END_INTERFACE +} IStdIdentityVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/IStorage.txt b/ctypes_generation/definitions/com/IStorage.txt new file mode 100644 index 00000000..2c5867fc --- /dev/null +++ b/ctypes_generation/definitions/com/IStorage.txt @@ -0,0 +1,108 @@ + typedef struct IStorageVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IStorage * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IStorage * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IStorage * This); + + HRESULT ( STDMETHODCALLTYPE *CreateStream )( + IStorage * This, + /* [string][in] */ const OLECHAR *pwcsName, + /* [in] */ DWORD grfMode, + /* [in] */ DWORD reserved1, + /* [in] */ DWORD reserved2, + /* [out] */ IStream **ppstm); + + /* [local] */ HRESULT ( STDMETHODCALLTYPE *OpenStream )( + IStorage * This, + /* [string][in] */ const OLECHAR *pwcsName, + /* [unique][in] */ void *reserved1, + /* [in] */ DWORD grfMode, + /* [in] */ DWORD reserved2, + /* [out] */ IStream **ppstm); + + HRESULT ( STDMETHODCALLTYPE *CreateStorage )( + IStorage * This, + /* [string][in] */ const OLECHAR *pwcsName, + /* [in] */ DWORD grfMode, + /* [in] */ DWORD reserved1, + /* [in] */ DWORD reserved2, + /* [out] */ IStorage **ppstg); + + HRESULT ( STDMETHODCALLTYPE *OpenStorage )( + IStorage * This, + /* [string][unique][in] */ const OLECHAR *pwcsName, + /* [unique][in] */ IStorage *pstgPriority, + /* [in] */ DWORD grfMode, + /* [unique][in] */ SNB snbExclude, + /* [in] */ DWORD reserved, + /* [out] */ IStorage **ppstg); + + HRESULT ( STDMETHODCALLTYPE *CopyTo )( + IStorage * This, + /* [in] */ DWORD ciidExclude, + /* [size_is][unique][in] */ const IID *rgiidExclude, + /* [unique][in] */ SNB snbExclude, + /* [unique][in] */ IStorage *pstgDest); + + HRESULT ( STDMETHODCALLTYPE *MoveElementTo )( + IStorage * This, + /* [string][in] */ const OLECHAR *pwcsName, + /* [unique][in] */ IStorage *pstgDest, + /* [string][in] */ const OLECHAR *pwcsNewName, + /* [in] */ DWORD grfFlags); + + HRESULT ( STDMETHODCALLTYPE *Commit )( + IStorage * This, + /* [in] */ DWORD grfCommitFlags); + + HRESULT ( STDMETHODCALLTYPE *Revert )( + IStorage * This); + + /* [local] */ HRESULT ( STDMETHODCALLTYPE *EnumElements )( + IStorage * This, + /* [in] */ DWORD reserved1, + /* [size_is][unique][in] */ void *reserved2, + /* [in] */ DWORD reserved3, + /* [out] */ IEnumSTATSTG **ppenum); + + HRESULT ( STDMETHODCALLTYPE *DestroyElement )( + IStorage * This, + /* [string][in] */ const OLECHAR *pwcsName); + + HRESULT ( STDMETHODCALLTYPE *RenameElement )( + IStorage * This, + /* [string][in] */ const OLECHAR *pwcsOldName, + /* [string][in] */ const OLECHAR *pwcsNewName); + + HRESULT ( STDMETHODCALLTYPE *SetElementTimes )( + IStorage * This, + /* [string][unique][in] */ const OLECHAR *pwcsName, + /* [unique][in] */ const FILETIME *pctime, + /* [unique][in] */ const FILETIME *patime, + /* [unique][in] */ const FILETIME *pmtime); + + HRESULT ( STDMETHODCALLTYPE *SetClass )( + IStorage * This, + /* [in] */ REFCLSID clsid); + + HRESULT ( STDMETHODCALLTYPE *SetStateBits )( + IStorage * This, + /* [in] */ DWORD grfStateBits, + /* [in] */ DWORD grfMask); + + HRESULT ( STDMETHODCALLTYPE *Stat )( + IStorage * This, + /* [out] */ STATSTG *pstatstg, + /* [in] */ DWORD grfStatFlag); + + END_INTERFACE + } IStorageVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/Explorer/IStream.txt b/ctypes_generation/definitions/com/IStream.txt similarity index 100% rename from ctypes_generation/definitions/com/Explorer/IStream.txt rename to ctypes_generation/definitions/com/IStream.txt diff --git a/ctypes_generation/definitions/com/IUnknownVtbl.txt b/ctypes_generation/definitions/com/IUnknown.txt similarity index 100% rename from ctypes_generation/definitions/com/IUnknownVtbl.txt rename to ctypes_generation/definitions/com/IUnknown.txt diff --git a/ctypes_generation/definitions/com/MYTEST.txt.ignore b/ctypes_generation/definitions/com/MYTEST.txt.ignore deleted file mode 100644 index 13c33db4..00000000 --- a/ctypes_generation/definitions/com/MYTEST.txt.ignore +++ /dev/null @@ -1,28 +0,0 @@ -typedef struct MyClsVtbl -{ - BEGIN_INTERFACE - - HRESULT ( STDMETHODCALLTYPE *QueryInterface )( - MyCls * This, - /* [in] */ REFIID riid, - /* [annotation][iid_is][out] */ - __RPC__deref_out void **ppvObject); - - ULONG ( STDMETHODCALLTYPE *AddRef )( - MyCls * This); - - ULONG ( STDMETHODCALLTYPE *Release )( - MyCls * This); - - HRESULT ( STDMETHODCALLTYPE *add )( - MyCls * This, - /* [in] */ UINT x, - /* [in] */ UINT y, - /* [out] */ UINT *res); - - HRESULT ( STDMETHODCALLTYPE *print_state )( - MyCls * This); - - END_INTERFACE -} MyClsVtbl; - diff --git a/ctypes_generation/definitions/com/combase/IActivationProperties.txt b/ctypes_generation/definitions/com/combase/IActivationProperties.txt new file mode 100644 index 00000000..612ad99c --- /dev/null +++ b/ctypes_generation/definitions/com/combase/IActivationProperties.txt @@ -0,0 +1,74 @@ +typedef struct IActivationPropertiesVtbl +{ + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IActivationProperties * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IActivationProperties * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IActivationProperties * This); + + HRESULT ( STDMETHODCALLTYPE *GetUnmarshalClass )( + IActivationProperties * This, + /* [in] */ REFIID riid, + /* [unique][in] */ void *pv, + /* [in] */ DWORD dwDestContext, + /* [unique][in] */ void *pvDestContext, + /* [in] */ DWORD mshlflags, + /* [out] */ CLSID *pCid); + + HRESULT ( STDMETHODCALLTYPE *GetMarshalSizeMax )( + IActivationProperties * This, + /* [in] */ REFIID riid, + /* [unique][in] */ void *pv, + /* [in] */ DWORD dwDestContext, + /* [unique][in] */ void *pvDestContext, + /* [in] */ DWORD mshlflags, + /* [out] */ DWORD *pSize); + + HRESULT ( STDMETHODCALLTYPE *MarshalInterface )( + IActivationProperties * This, + /* [unique][in] */ IStream *pStm, + /* [in] */ REFIID riid, + /* [unique][in] */ void *pv, + /* [in] */ DWORD dwDestContext, + /* [unique][in] */ void *pvDestContext, + /* [in] */ DWORD mshlflags); + + HRESULT ( STDMETHODCALLTYPE *UnmarshalInterface )( + IActivationProperties * This, + /* [unique][in] */ IStream *pStm, + /* [in] */ REFIID riid, + /* [out] */ void **ppv); + + HRESULT ( STDMETHODCALLTYPE *ReleaseMarshalData )( + IActivationProperties * This, + /* [unique][in] */ IStream *pStm); + + HRESULT ( STDMETHODCALLTYPE *DisconnectObject )( + IActivationProperties * This, + /* [in] */ DWORD dwReserved); + + HRESULT ( STDMETHODCALLTYPE *SetDestCtx )( + IActivationProperties * This, + /* [in] */ DWORD dwDestCtx); + + HRESULT ( STDMETHODCALLTYPE *SetMarshalFlags )( + IActivationProperties * This, + /* [in] */ DWORD dwMarshalFlags); + + HRESULT ( STDMETHODCALLTYPE *SetLocalBlob )( + IActivationProperties * This, + /* [in] */ void *blob); + + HRESULT ( STDMETHODCALLTYPE *GetLocalBlob )( + IActivationProperties * This, + /* [out] */ void **blob); + + END_INTERFACE +} IActivationPropertiesVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/combase/IActivationPropertiesOut.txt b/ctypes_generation/definitions/com/combase/IActivationPropertiesOut.txt new file mode 100644 index 00000000..8097a7f6 --- /dev/null +++ b/ctypes_generation/definitions/com/combase/IActivationPropertiesOut.txt @@ -0,0 +1,38 @@ +typedef struct IActivationPropertiesOutVtbl +{ + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IActivationPropertiesOut * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IActivationPropertiesOut * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IActivationPropertiesOut * This); + + HRESULT ( STDMETHODCALLTYPE *GetActivationID )( + IActivationPropertiesOut * This, + /* [out] */ GUID *pActivationID); + + HRESULT ( STDMETHODCALLTYPE *GetObjectInterface )( + IActivationPropertiesOut * This, + /* [in] */ REFIID riid, + /* [in] */ DWORD actvflags, + /* [iid_is][out] */ void **ppv); + + HRESULT ( STDMETHODCALLTYPE *GetObjectInterfaces )( + IActivationPropertiesOut * This, + /* [in] */ DWORD cIfs, + /* [in] */ DWORD actvflags, + /* [size_is][in] */ MULTI_QI *multiQi); + + HRESULT ( STDMETHODCALLTYPE *RemoveRequestedIIDs )( + IActivationPropertiesOut * This, + /* [in] */ DWORD cIfs, + /* [size_is][in] */ IID *rgIID); + + END_INTERFACE +} IActivationPropertiesOutVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/combase/IActivationPropertyIn.txt b/ctypes_generation/definitions/com/combase/IActivationPropertyIn.txt new file mode 100644 index 00000000..a85521d1 --- /dev/null +++ b/ctypes_generation/definitions/com/combase/IActivationPropertyIn.txt @@ -0,0 +1,64 @@ +typedef struct IActivationPropertiesInVtbl +{ + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IActivationPropertiesIn * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IActivationPropertiesIn * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IActivationPropertiesIn * This); + + HRESULT ( STDMETHODCALLTYPE *GetActivationID )( + IActivationPropertiesIn * This, + /* [out] */ GUID *pActivationID); + + HRESULT ( STDMETHODCALLTYPE *GetClassInfo )( + IActivationPropertiesIn * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppv); + + HRESULT ( STDMETHODCALLTYPE *GetClsctx )( + IActivationPropertiesIn * This, + /* [out] */ DWORD *pclsctx); + + HRESULT ( STDMETHODCALLTYPE *GetActivationFlags )( + IActivationPropertiesIn * This, + /* [out] */ DWORD *pactvflags); + + HRESULT ( STDMETHODCALLTYPE *AddRequestedIIDs )( + IActivationPropertiesIn * This, + /* [in] */ DWORD cIfs, + /* [size_is][in] */ IID *rgIID); + + HRESULT ( STDMETHODCALLTYPE *GetRequestedIIDs )( + IActivationPropertiesIn * This, + /* [out] */ ULONG *pulCount, + /* [out] */ IID **prgIID); + + HRESULT ( STDMETHODCALLTYPE *DelegateGetClassObject )( + IActivationPropertiesIn * This, + /* [out] */ IActivationPropertiesOut **pActPropsOut); + + HRESULT ( STDMETHODCALLTYPE *DelegateCreateInstance )( + IActivationPropertiesIn * This, + /* [in] */ IUnknown *pUnkOuter, + /* [out] */ IActivationPropertiesOut **pActPropsOut); + + HRESULT ( STDMETHODCALLTYPE *DelegateCIAndGetCF )( + IActivationPropertiesIn * This, + /* [in] */ IUnknown *pUnkOuter, + /* [out] */ IActivationPropertiesOut **pActPropsOut, + /* [out] */ IClassFactory **ppCf); + + HRESULT ( STDMETHODCALLTYPE *GetReturnActivationProperties )( + IActivationPropertiesIn * This, + /* [in] */ IUnknown *pUnk, + /* [out] */ IActivationPropertiesOut **ppActOut); + + END_INTERFACE +} IActivationPropertiesInVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/combase/IClassClassicInfo.txt b/ctypes_generation/definitions/com/combase/IClassClassicInfo.txt new file mode 100644 index 00000000..d9b32e88 --- /dev/null +++ b/ctypes_generation/definitions/com/combase/IClassClassicInfo.txt @@ -0,0 +1,47 @@ + typedef struct IClassClassicInfoVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IClassClassicInfo * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IClassClassicInfo * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IClassClassicInfo * This); + + HRESULT ( STDMETHODCALLTYPE *GetThreadingModel )( + IClassClassicInfo * This, + /* [out] */ ThreadingModel *pthreadmodel); + + HRESULT ( STDMETHODCALLTYPE *GetModulePath )( + IClassClassicInfo * This, + /* [in] */ CLSCTX clsctx, + /* [string][out] */ WCHAR **pwszDllName); + + HRESULT ( STDMETHODCALLTYPE *GetImplementedClsid )( + IClassClassicInfo * This, + /* [out] */ GUID **ppguidClsid); + + HRESULT ( STDMETHODCALLTYPE *GetProcess )( + IClassClassicInfo * This, + /* [in] */ REFIID riid, + /* [out] */ void **ppv); + + HRESULT ( STDMETHODCALLTYPE *GetRemoteServerName )( + IClassClassicInfo * This, + /* [out] */ WCHAR **pwszServerName); + + HRESULT ( STDMETHODCALLTYPE *GetLocalServerType )( + IClassClassicInfo * This, + /* [out] */ LocalServerType *pType); + + HRESULT ( STDMETHODCALLTYPE *GetSurrogateCommandLine )( + IClassClassicInfo * This, + /* [out] */ WCHAR **pwszSurrogateCommandLine); + + END_INTERFACE + } IClassClassicInfoVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/combase/IComClassInfo.txt b/ctypes_generation/definitions/com/combase/IComClassInfo.txt new file mode 100644 index 00000000..a1dfd3ea --- /dev/null +++ b/ctypes_generation/definitions/com/combase/IComClassInfo.txt @@ -0,0 +1,78 @@ + typedef struct IComClassInfoVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IComClassInfo * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IComClassInfo * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IComClassInfo * This); + + HRESULT ( STDMETHODCALLTYPE *GetConfiguredClsid )( + IComClassInfo * This, + /* [out] */ GUID **ppguidClsid); + + HRESULT ( STDMETHODCALLTYPE *GetProgId )( + IComClassInfo * This, + /* [out] */ WCHAR **pwszProgid); + + HRESULT ( STDMETHODCALLTYPE *GetClassName )( + IComClassInfo * This, + /* [out] */ WCHAR **pwszClassName); + + HRESULT ( STDMETHODCALLTYPE *GetApplication )( + IComClassInfo * This, + /* [in] */ REFIID riid, + /* [out] */ void **ppv); + + HRESULT ( STDMETHODCALLTYPE *GetClassContext )( + IComClassInfo * This, + /* [in] */ CLSCTX clsctxFilter, + /* [out] */ CLSCTX *pclsctx); + + HRESULT ( STDMETHODCALLTYPE *GetCustomActivatorCount )( + IComClassInfo * This, + /* [in] */ ACTIVATION_STAGE activationStage, + /* [out] */ ULONG *pulCount); + + HRESULT ( STDMETHODCALLTYPE *GetCustomActivatorClsids )( + IComClassInfo * This, + /* [in] */ ACTIVATION_STAGE activationStage, + /* [out] */ GUID **prgguidClsid); + + HRESULT ( STDMETHODCALLTYPE *GetCustomActivators )( + IComClassInfo * This, + /* [in] */ ACTIVATION_STAGE activationStage, + /* [out] */ ISystemActivator ***prgpActivator); + + HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( + IComClassInfo * This, + /* [in] */ REFIID riid, + /* [out] */ void **ppv); + + HRESULT ( STDMETHODCALLTYPE *IsComPlusConfiguredClass )( + IComClassInfo * This, + /* [out] */ BOOL *pfComPlusConfiguredClass); + + HRESULT ( STDMETHODCALLTYPE *MustRunInClientContext )( + IComClassInfo * This, + /* [out] */ BOOL *pbMustRunInClientContext); + + HRESULT ( STDMETHODCALLTYPE *GetVersionNumber )( + IComClassInfo * This, + /* [out] */ DWORD *pdwVersionMS, + /* [out] */ DWORD *pdwVersionLS); + + HRESULT ( STDMETHODCALLTYPE *Lock )( + IComClassInfo * This); + + HRESULT ( STDMETHODCALLTYPE *Unlock )( + IComClassInfo * This); + + END_INTERFACE + } IComClassInfoVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/combase/IContext.txt b/ctypes_generation/definitions/com/combase/IContext.txt new file mode 100644 index 00000000..d1f96102 --- /dev/null +++ b/ctypes_generation/definitions/com/combase/IContext.txt @@ -0,0 +1,37 @@ +typedef struct IContextVtbl +{ + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IContext * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IContext * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IContext * This); + + HRESULT ( STDMETHODCALLTYPE *SetProperty )( + IContext * This, + /* [in] */ REFGUID rpolicyId, + /* [in] */ CPFLAGS flags, + /* [in] */ IUnknown *pUnk); + + HRESULT ( STDMETHODCALLTYPE *RemoveProperty )( + IContext * This, + /* [in] */ REFGUID rPolicyId); + + HRESULT ( STDMETHODCALLTYPE *GetProperty )( + IContext * This, + /* [in] */ REFGUID rGuid, + /* [out] */ CPFLAGS *pFlags, + /* [out] */ IUnknown **ppUnk); + + HRESULT ( STDMETHODCALLTYPE *EnumContextProps )( + IContext * This, + /* [out] */ IEnumContextProps **ppEnumContextProps); + + END_INTERFACE +} IContextVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/combase/IEnumContextProps.txt b/ctypes_generation/definitions/com/combase/IEnumContextProps.txt new file mode 100644 index 00000000..9a82fbee --- /dev/null +++ b/ctypes_generation/definitions/com/combase/IEnumContextProps.txt @@ -0,0 +1,38 @@ +typedef struct IEnumContextPropsVtbl +{ + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IEnumContextProps * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IEnumContextProps * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IEnumContextProps * This); + + HRESULT ( STDMETHODCALLTYPE *Next )( + IEnumContextProps * This, + /* [in] */ ULONG celt, + /* [length_is][size_is][out] */ ContextProperty *pContextProperties, + /* [out] */ ULONG *pceltFetched); + + HRESULT ( STDMETHODCALLTYPE *Skip )( + IEnumContextProps * This, + /* [in] */ ULONG celt); + + HRESULT ( STDMETHODCALLTYPE *Reset )( + IEnumContextProps * This); + + HRESULT ( STDMETHODCALLTYPE *Clone )( + IEnumContextProps * This, + /* [out] */ IEnumContextProps **ppEnumContextProps); + + HRESULT ( STDMETHODCALLTYPE *Count )( + IEnumContextProps * This, + /* [out] */ ULONG *pcelt); + + END_INTERFACE +} IEnumContextPropsVtbl; diff --git a/ctypes_generation/definitions/com/combase/IEnumSTATSTG.txt b/ctypes_generation/definitions/com/combase/IEnumSTATSTG.txt new file mode 100644 index 00000000..9f0fc1a0 --- /dev/null +++ b/ctypes_generation/definitions/com/combase/IEnumSTATSTG.txt @@ -0,0 +1,34 @@ + typedef struct IEnumSTATSTGVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IEnumSTATSTG * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IEnumSTATSTG * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IEnumSTATSTG * This); + + /* [local] */ HRESULT ( STDMETHODCALLTYPE *Next )( + IEnumSTATSTG * This, + /* [in] */ ULONG celt, + /* [length_is][size_is][out] */ STATSTG *rgelt, + /* [out] */ ULONG *pceltFetched); + + HRESULT ( STDMETHODCALLTYPE *Skip )( + IEnumSTATSTG * This, + /* [in] */ ULONG celt); + + HRESULT ( STDMETHODCALLTYPE *Reset )( + IEnumSTATSTG * This); + + HRESULT ( STDMETHODCALLTYPE *Clone )( + IEnumSTATSTG * This, + /* [out] */ IEnumSTATSTG **ppenum); + + END_INTERFACE + } IEnumSTATSTGVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/combase/IInitActivationPropertiesIn.txt b/ctypes_generation/definitions/com/combase/IInitActivationPropertiesIn.txt new file mode 100644 index 00000000..ffcd521f --- /dev/null +++ b/ctypes_generation/definitions/com/combase/IInitActivationPropertiesIn.txt @@ -0,0 +1,43 @@ +typedef struct IInitActivationPropertiesInVtbl +{ + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IInitActivationPropertiesIn * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IInitActivationPropertiesIn * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IInitActivationPropertiesIn * This); + + HRESULT ( STDMETHODCALLTYPE *SetClsctx )( + IInitActivationPropertiesIn * This, + /* [in] */ DWORD clsctx); + + HRESULT ( STDMETHODCALLTYPE *SetActivationFlags )( + IInitActivationPropertiesIn * This, + /* [in] */ DWORD actvflags); + + HRESULT ( STDMETHODCALLTYPE *SetClassInfo )( + IInitActivationPropertiesIn * This, + /* [unique][in] */ IUnknown *pUnkClassInfo); + + HRESULT ( STDMETHODCALLTYPE *SetContextInfo )( + IInitActivationPropertiesIn * This, + /* [unique][in] */ IContext *pClientContext, + /* [in] */ IContext *pPrototypeContext); + + HRESULT ( STDMETHODCALLTYPE *SetConstructFromStorage )( + IInitActivationPropertiesIn * This, + /* [unique][in] */ IStorage *pStorage); + + HRESULT ( STDMETHODCALLTYPE *SetConstructFromFile )( + IInitActivationPropertiesIn * This, + /* [in] */ WCHAR *wszFileName, + /* [in] */ DWORD dwMode); + + END_INTERFACE +} IInitActivationPropertiesInVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/combase/IOpaqueData.txt b/ctypes_generation/definitions/com/combase/IOpaqueData.txt new file mode 100644 index 00000000..1374bed5 --- /dev/null +++ b/ctypes_generation/definitions/com/combase/IOpaqueData.txt @@ -0,0 +1,38 @@ +typedef struct IOpaqueDataInfoVtbl +{ + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IOpaqueDataInfo * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IOpaqueDataInfo * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IOpaqueDataInfo * This); + + HRESULT ( STDMETHODCALLTYPE *AddOpaqueData )( + IOpaqueDataInfo * This, + /* [in] */ OpaqueData *pData); + + HRESULT ( STDMETHODCALLTYPE *GetOpaqueData )( + IOpaqueDataInfo * This, + /* [in] */ REFGUID guid, + /* [out] */ OpaqueData **pData); + + HRESULT ( STDMETHODCALLTYPE *DeleteOpaqueData )( + IOpaqueDataInfo * This, + /* [in] */ REFGUID guid); + + HRESULT ( STDMETHODCALLTYPE *GetOpaqueDataCount )( + IOpaqueDataInfo * This, + /* [out] */ ULONG *pulCount); + + HRESULT ( STDMETHODCALLTYPE *GetAllOpaqueData )( + IOpaqueDataInfo * This, + /* [out] */ OpaqueData **prgData); + + END_INTERFACE +} IOpaqueDataInfoVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/combase/IPrivActivationPropertiesIn.txt b/ctypes_generation/definitions/com/combase/IPrivActivationPropertiesIn.txt new file mode 100644 index 00000000..322687b7 --- /dev/null +++ b/ctypes_generation/definitions/com/combase/IPrivActivationPropertiesIn.txt @@ -0,0 +1,84 @@ + typedef struct IPrivActivationPropertiesInVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IPrivActivationPropertiesIn * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IPrivActivationPropertiesIn * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IPrivActivationPropertiesIn * This); + + HRESULT ( STDMETHODCALLTYPE *GetActivationID )( + IPrivActivationPropertiesIn * This, + /* [out] */ GUID *pActivationID); + + HRESULT ( STDMETHODCALLTYPE *GetClassInfo )( + IPrivActivationPropertiesIn * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppv); + + HRESULT ( STDMETHODCALLTYPE *GetClsctx )( + IPrivActivationPropertiesIn * This, + /* [out] */ DWORD *pclsctx); + + HRESULT ( STDMETHODCALLTYPE *GetActivationFlags )( + IPrivActivationPropertiesIn * This, + /* [out] */ DWORD *pactvflags); + + HRESULT ( STDMETHODCALLTYPE *AddRequestedIIDs )( + IPrivActivationPropertiesIn * This, + /* [in] */ DWORD cIfs, + /* [size_is][in] */ IID *rgIID); + + HRESULT ( STDMETHODCALLTYPE *GetRequestedIIDs )( + IPrivActivationPropertiesIn * This, + /* [out] */ ULONG *pulCount, + /* [out] */ IID **prgIID); + + HRESULT ( STDMETHODCALLTYPE *DelegateGetClassObject )( + IPrivActivationPropertiesIn * This, + /* [out] */ IActivationPropertiesOut **pActPropsOut); + + HRESULT ( STDMETHODCALLTYPE *DelegateCreateInstance )( + IPrivActivationPropertiesIn * This, + /* [in] */ IUnknown *pUnkOuter, + /* [out] */ IActivationPropertiesOut **pActPropsOut); + + HRESULT ( STDMETHODCALLTYPE *DelegateCIAndGetCF )( + IPrivActivationPropertiesIn * This, + /* [in] */ IUnknown *pUnkOuter, + /* [out] */ IActivationPropertiesOut **pActPropsOut, + /* [out] */ IClassFactory **ppCf); + + HRESULT ( STDMETHODCALLTYPE *GetReturnActivationProperties )( + IPrivActivationPropertiesIn * This, + /* [in] */ IUnknown *pUnk, + /* [out] */ IActivationPropertiesOut **ppActOut); + + HRESULT ( STDMETHODCALLTYPE *PrivGetReturnActivationProperties )( + IPrivActivationPropertiesIn * This, + /* [out] */ IPrivActivationPropertiesOut **ppActOut); + + HRESULT ( STDMETHODCALLTYPE *GetCOMVersion )( + IPrivActivationPropertiesIn * This, + /* [out] */ COMVERSION *pVersion); + + HRESULT ( STDMETHODCALLTYPE *GetClsid )( + IPrivActivationPropertiesIn * This, + /* [out] */ CLSID *pClsid); + + HRESULT ( STDMETHODCALLTYPE *GetClientToken )( + IPrivActivationPropertiesIn * This, + /* [out] */ HANDLE *pHandle); + + HRESULT ( STDMETHODCALLTYPE *GetDestCtx )( + IPrivActivationPropertiesIn * This, + /* [out] */ DWORD *pdwDestCtx); + + END_INTERFACE + } IPrivActivationPropertiesInVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/combase/IPrivActivationPropertiesOut.txt b/ctypes_generation/definitions/com/combase/IPrivActivationPropertiesOut.txt new file mode 100644 index 00000000..8c7d51b8 --- /dev/null +++ b/ctypes_generation/definitions/com/combase/IPrivActivationPropertiesOut.txt @@ -0,0 +1,58 @@ + typedef struct IPrivActivationPropertiesOutVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IPrivActivationPropertiesOut * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IPrivActivationPropertiesOut * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IPrivActivationPropertiesOut * This); + + HRESULT ( STDMETHODCALLTYPE *GetActivationID )( + IPrivActivationPropertiesOut * This, + /* [out] */ GUID *pActivationID); + + HRESULT ( STDMETHODCALLTYPE *GetObjectInterface )( + IPrivActivationPropertiesOut * This, + /* [in] */ REFIID riid, + /* [in] */ DWORD actvflags, + /* [iid_is][out] */ void **ppv); + + HRESULT ( STDMETHODCALLTYPE *GetObjectInterfaces )( + IPrivActivationPropertiesOut * This, + /* [in] */ DWORD cIfs, + /* [in] */ DWORD actvflags, + /* [size_is][in] */ MULTI_QI *multiQi); + + HRESULT ( STDMETHODCALLTYPE *RemoveRequestedIIDs )( + IPrivActivationPropertiesOut * This, + /* [in] */ DWORD cIfs, + /* [size_is][in] */ IID *rgIID); + + HRESULT ( STDMETHODCALLTYPE *SetObjectInterfaces )( + IPrivActivationPropertiesOut * This, + /* [in] */ DWORD cIfs, + /* [in] */ IID *pIID, + /* [in] */ IUnknown *pUnk); + + HRESULT ( STDMETHODCALLTYPE *SetMarshalledResults )( + IPrivActivationPropertiesOut * This, + /* [in] */ DWORD cIfs, + /* [in] */ IID *pIID, + /* [in] */ HRESULT *pHr, + /* [in] */ MInterfacePointer **pIntfData); + + HRESULT ( STDMETHODCALLTYPE *GetMarshalledResults )( + IPrivActivationPropertiesOut * This, + /* [out] */ DWORD *pcIfs, + /* [out] */ IID **pIID, + /* [out] */ HRESULT **pHr, + /* [out] */ MInterfacePointer ***pIntfData); + + END_INTERFACE + } IPrivActivationPropertiesOutVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/combase/IScmReplyInfo.txt b/ctypes_generation/definitions/com/combase/IScmReplyInfo.txt new file mode 100644 index 00000000..5125672c --- /dev/null +++ b/ctypes_generation/definitions/com/combase/IScmReplyInfo.txt @@ -0,0 +1,33 @@ + typedef struct IScmReplyInfoVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IScmReplyInfo * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IScmReplyInfo * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IScmReplyInfo * This); + + HRESULT ( STDMETHODCALLTYPE *SetResolverInfo )( + IScmReplyInfo * This, + /* [in] */ PRIV_RESOLVER_INFO *pResolverInfo); /* Need to be cast to PRIV_RESOLVER_INFO_LEGACY on old windows */ + + HRESULT ( STDMETHODCALLTYPE *GetResolverInfo )( + IScmReplyInfo * This, + /* [out] */ PRIV_RESOLVER_INFO **ppResolverInfo); /* Need to be cast to PRIV_RESOLVER_INFO_LEGACY on old windows */ + + HRESULT ( STDMETHODCALLTYPE *SetRemoteReplyInfo )( + IScmReplyInfo * This, + /* [in] */ REMOTE_REPLY_SCM_INFO *pRemoteReply); + + HRESULT ( STDMETHODCALLTYPE *GetRemoteReplyInfo )( + IScmReplyInfo * This, + /* [out] */ REMOTE_REPLY_SCM_INFO **ppRemoteReply); + + END_INTERFACE + } IScmReplyInfoVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/combase/IScmRequestInfo.txt b/ctypes_generation/definitions/com/combase/IScmRequestInfo.txt new file mode 100644 index 00000000..9dfeb1b8 --- /dev/null +++ b/ctypes_generation/definitions/com/combase/IScmRequestInfo.txt @@ -0,0 +1,33 @@ +typedef struct IScmRequestInfoVtbl +{ + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IScmRequestInfo * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IScmRequestInfo * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IScmRequestInfo * This); + + HRESULT ( STDMETHODCALLTYPE *SetScmInfo )( + IScmRequestInfo * This, + /* [in] */ PRIV_SCM_INFO *pScmInfo); + + HRESULT ( STDMETHODCALLTYPE *GetScmInfo )( + IScmRequestInfo * This, + /* [out] */ PRIV_SCM_INFO **ppScmInfo); + + HRESULT ( STDMETHODCALLTYPE *SetRemoteRequestInfo )( + IScmRequestInfo * This, + /* [in] */ REMOTE_REQUEST_SCM_INFO *pRemoteReq); + + HRESULT ( STDMETHODCALLTYPE *GetRemoteRequestInfo )( + IScmRequestInfo * This, + /* [out] */ REMOTE_REQUEST_SCM_INFO **ppRemoteReq); + + END_INTERFACE +} IScmRequestInfoVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/combase/IStandardActivator.txt b/ctypes_generation/definitions/com/combase/IStandardActivator.txt new file mode 100644 index 00000000..21783fd5 --- /dev/null +++ b/ctypes_generation/definitions/com/combase/IStandardActivator.txt @@ -0,0 +1,58 @@ +typedef struct IStandardActivatorVtbl +{ + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IStandardActivator * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IStandardActivator * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IStandardActivator * This); + + HRESULT ( STDMETHODCALLTYPE *StandardGetClassObject )( + IStandardActivator * This, + /* [in] */ REFCLSID rclsid, + /* [in] */ DWORD dwClsCtx, + /* [in] */ COSERVERINFO *pServerInfo, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppv); + + HRESULT ( STDMETHODCALLTYPE *StandardCreateInstance )( + IStandardActivator * This, + /* [in] */ REFCLSID Clsid, + /* [in] */ IUnknown *punkOuter, + /* [in] */ DWORD dwClsCtx, + /* [in] */ COSERVERINFO *pServerInfo, + /* [in] */ DWORD dwCount, + /* [size_is][in] */ MULTI_QI *pResults); + + HRESULT ( STDMETHODCALLTYPE *StandardGetInstanceFromFile )( + IStandardActivator * This, + /* [in] */ COSERVERINFO *pServerInfo, + /* [in] */ CLSID *pclsidOverride, + /* [in] */ IUnknown *punkOuter, + /* [in] */ DWORD dwClsCtx, + /* [in] */ DWORD grfMode, + /* [in] */ OLECHAR *pwszName, + /* [in] */ DWORD dwCount, + /* [size_is][in] */ MULTI_QI *pResults); + + HRESULT ( STDMETHODCALLTYPE *StandardGetInstanceFromIStorage )( + IStandardActivator * This, + /* [in] */ COSERVERINFO *pServerInfo, + /* [in] */ CLSID *pclsidOverride, + /* [in] */ IUnknown *punkOuter, + /* [in] */ DWORD dwClsCtx, + /* [in] */ IStorage *pstg, + /* [in] */ DWORD dwCount, + /* [size_is][in] */ MULTI_QI *pResults); + + HRESULT ( STDMETHODCALLTYPE *Reset )( + IStandardActivator * This); + + END_INTERFACE +} IStandardActivatorVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/combase/ISystemActivator.txt b/ctypes_generation/definitions/com/combase/ISystemActivator.txt new file mode 100644 index 00000000..cd1266ca --- /dev/null +++ b/ctypes_generation/definitions/com/combase/ISystemActivator.txt @@ -0,0 +1,28 @@ + typedef struct ISystemActivatorVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + ISystemActivator * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + ISystemActivator * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + ISystemActivator * This); + + HRESULT ( STDMETHODCALLTYPE *GetClassObject )( + ISystemActivator * This, + /* [unique][in] */ IActivationPropertiesIn *pActProperties, + /* [out] */ IActivationPropertiesOut **ppActProperties); + + HRESULT ( STDMETHODCALLTYPE *CreateInstance )( + ISystemActivator * This, + /* [unique][in] */ IUnknown *pUnkOuter, + /* [unique][in] */ IActivationPropertiesIn *pActProperties, + /* [out] */ IActivationPropertiesOut **ppActProperties); + + END_INTERFACE + } ISystemActivatorVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/manually_created/IProxyManager.txt b/ctypes_generation/definitions/com/manually_created/IProxyManager.txt new file mode 100644 index 00000000..ca68a888 --- /dev/null +++ b/ctypes_generation/definitions/com/manually_created/IProxyManager.txt @@ -0,0 +1,57 @@ +// Manually crafted from windows 10 +typedef struct IProxyManagerVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + __RPC__in IProxyManager * This, + /* [in] */ __RPC__in REFIID riid, + /* [annotation][iid_is][out] */ + _COM_Outptr_ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + __RPC__in IProxyManager * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + __RPC__in IProxyManager * This); + + HRESULT ( STDMETHODCALLTYPE *CreateServer )( + IProxyManager * This, + REFCLSID * rclsid, + DWORD * clsctx, + PVOID *pv); + + BOOL ( STDMETHODCALLTYPE *IsConnected )( + IProxyManager * This); + + HRESULT ( STDMETHODCALLTYPE *LockConnection )( + IProxyManager * This, + BOOL fLock, + BOOL fLastUnlockReleases); + + HRESULT ( STDMETHODCALLTYPE *Disconnect )( + IProxyManager * This); + + HRESULT ( STDMETHODCALLTYPE *GetConnectionStatus )( + IProxyManager * This); + + HRESULT ( STDMETHODCALLTYPE *ScalarDeletingDestructor )( // CPP code ? is this the real end of the Interface ? + IProxyManager * This); + + HRESULT ( STDMETHODCALLTYPE *SetMapping )( + IProxyManager * This); + + HRESULT ( STDMETHODCALLTYPE *GetMapping )( + IProxyManager * This); + + IObjContext ( STDMETHODCALLTYPE *GetServerObjectContext )( + IProxyManager * This); + + HRESULT ( STDMETHODCALLTYPE *GetWrapperForContex )( + IProxyManager * This, + IObjContext *pCtx, + IID *riid, + void **ppv); + + END_INTERFACE + } IProxyManagerVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/manually_created/IProxyServerIdentity.txt b/ctypes_generation/definitions/com/manually_created/IProxyServerIdentity.txt new file mode 100644 index 00000000..b667549b --- /dev/null +++ b/ctypes_generation/definitions/com/manually_created/IProxyServerIdentity.txt @@ -0,0 +1,28 @@ +typedef struct IProxyServerIdentityVtbl +{ + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IProxyServerIdentity * This, + /* [in] */ REFIID riid, + /* [annotation][iid_is][out] */ + __RPC__deref_out void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IProxyServerIdentity * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IProxyServerIdentity * This); + + HRESULT ( STDMETHODCALLTYPE *GetServerProcessId )( + IProxyServerIdentity * This, + UINT *processId); + + HRESULT ( STDMETHODCALLTYPE *GetServerProcessHandle )( + IProxyServerIdentity * This, + DWORD dwDesiredAccess, + INT bInheritHandle, + PVOID *phProcess) ; + + END_INTERFACE +} IProxyServerIdentityVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/rpc/IChannelHook.txt b/ctypes_generation/definitions/com/rpc/IChannelHook.txt new file mode 100644 index 00000000..e7552954 --- /dev/null +++ b/ctypes_generation/definitions/com/rpc/IChannelHook.txt @@ -0,0 +1,62 @@ + typedef struct IChannelHookVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IChannelHook * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IChannelHook * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IChannelHook * This); + + PVOID ( STDMETHODCALLTYPE *ClientGetSize )( + IChannelHook * This, + /* [in] */ REFGUID uExtent, + /* [in] */ REFIID riid, + /* [out] */ ULONG *pDataSize); + + PVOID ( STDMETHODCALLTYPE *ClientFillBuffer )( + IChannelHook * This, + /* [in] */ REFGUID uExtent, + /* [in] */ REFIID riid, + /* [out][in] */ ULONG *pDataSize, + /* [in] */ void *pDataBuffer); + + PVOID ( STDMETHODCALLTYPE *ClientNotify )( + IChannelHook * This, + /* [in] */ REFGUID uExtent, + /* [in] */ REFIID riid, + /* [in] */ ULONG cbDataSize, + /* [in] */ void *pDataBuffer, + /* [in] */ DWORD lDataRep, + /* [in] */ HRESULT hrFault); + + PVOID ( STDMETHODCALLTYPE *ServerNotify )( + IChannelHook * This, + /* [in] */ REFGUID uExtent, + /* [in] */ REFIID riid, + /* [in] */ ULONG cbDataSize, + /* [in] */ void *pDataBuffer, + /* [in] */ DWORD lDataRep); + + PVOID ( STDMETHODCALLTYPE *ServerGetSize )( + IChannelHook * This, + /* [in] */ REFGUID uExtent, + /* [in] */ REFIID riid, + /* [in] */ HRESULT hrFault, + /* [out] */ ULONG *pDataSize); + + PVOID ( STDMETHODCALLTYPE *ServerFillBuffer )( + IChannelHook * This, + /* [in] */ REFGUID uExtent, + /* [in] */ REFIID riid, + /* [out][in] */ ULONG *pDataSize, + /* [in] */ void *pDataBuffer, + /* [in] */ HRESULT hrFault); + + END_INTERFACE + } IChannelHookVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/rpc/IRpcChannelBuffer.txt b/ctypes_generation/definitions/com/rpc/IRpcChannelBuffer.txt new file mode 100644 index 00000000..94373115 --- /dev/null +++ b/ctypes_generation/definitions/com/rpc/IRpcChannelBuffer.txt @@ -0,0 +1,39 @@ + typedef struct IRpcChannelBufferVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IRpcChannelBuffer * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IRpcChannelBuffer * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IRpcChannelBuffer * This); + + HRESULT ( STDMETHODCALLTYPE *GetBuffer )( + IRpcChannelBuffer * This, + /* [in] */ RPCOLEMESSAGE *pMessage, + /* [in] */ REFIID riid); + + HRESULT ( STDMETHODCALLTYPE *SendReceive )( + IRpcChannelBuffer * This, + /* [out][in] */ RPCOLEMESSAGE *pMessage, + /* [out] */ ULONG *pStatus); + + HRESULT ( STDMETHODCALLTYPE *FreeBuffer )( + IRpcChannelBuffer * This, + /* [in] */ RPCOLEMESSAGE *pMessage); + + HRESULT ( STDMETHODCALLTYPE *GetDestCtx )( + IRpcChannelBuffer * This, + /* [out] */ DWORD *pdwDestContext, + /* [out] */ void **ppvDestContext); + + HRESULT ( STDMETHODCALLTYPE *IsConnected )( + IRpcChannelBuffer * This); + + END_INTERFACE + } IRpcChannelBufferVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/rpc/IRpcHelper.txt b/ctypes_generation/definitions/com/rpc/IRpcHelper.txt new file mode 100644 index 00000000..94c9c0cc --- /dev/null +++ b/ctypes_generation/definitions/com/rpc/IRpcHelper.txt @@ -0,0 +1,26 @@ + typedef struct IRpcHelperVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IRpcHelper * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IRpcHelper * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IRpcHelper * This); + + HRESULT ( STDMETHODCALLTYPE *GetDCOMProtocolVersion )( + IRpcHelper * This, + /* [out] */ DWORD *pComVersion); + + HRESULT ( STDMETHODCALLTYPE *GetIIDFromOBJREF )( + IRpcHelper * This, + /* [in] */ void *pObjRef, + /* [out] */ IID **piid); + + END_INTERFACE + } IRpcHelperVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/rpc/IRpcOptions.txt b/ctypes_generation/definitions/com/rpc/IRpcOptions.txt new file mode 100644 index 00000000..1bf0878f --- /dev/null +++ b/ctypes_generation/definitions/com/rpc/IRpcOptions.txt @@ -0,0 +1,29 @@ + typedef struct IRpcOptionsVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IRpcOptions * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ void **ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IRpcOptions * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IRpcOptions * This); + + HRESULT ( STDMETHODCALLTYPE *Set )( + IRpcOptions * This, + /* [in] */ IUnknown *pPrx, + /* [in] */ DWORD dwProperty, + /* [in] */ ULONG_PTR dwValue); + + HRESULT ( STDMETHODCALLTYPE *Query )( + IRpcOptions * This, + /* [in] */ IUnknown *pPrx, + /* [in] */ DWORD dwProperty, + /* [out] */ ULONG_PTR *pdwValue); + + END_INTERFACE + } IRpcOptionsVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/rpc/IRpcStubBuffer.txt b/ctypes_generation/definitions/com/rpc/IRpcStubBuffer.txt new file mode 100644 index 00000000..c4486ac9 --- /dev/null +++ b/ctypes_generation/definitions/com/rpc/IRpcStubBuffer.txt @@ -0,0 +1,45 @@ + typedef struct IRpcStubBufferVtbl + { + BEGIN_INTERFACE + + HRESULT ( STDMETHODCALLTYPE *QueryInterface )( + IRpcStubBuffer * This, + /* [in] */ REFIID riid, + /* [iid_is][out] */ PVOID *ppvObject); + + ULONG ( STDMETHODCALLTYPE *AddRef )( + IRpcStubBuffer * This); + + ULONG ( STDMETHODCALLTYPE *Release )( + IRpcStubBuffer * This); + + HRESULT ( STDMETHODCALLTYPE *Connect )( + IRpcStubBuffer * This, + /* [in] */ IUnknown *pUnkServer); + + PVOID ( STDMETHODCALLTYPE *Disconnect )( + IRpcStubBuffer * This); + + HRESULT ( STDMETHODCALLTYPE *Invoke )( + IRpcStubBuffer * This, + /* [in] */ RPCOLEMESSAGE *_prpcmsg, + /* [in] */ IRpcChannelBuffer *_pRpcChannelBuffer); + + // IRpcStubBuffer * + PVOID ( STDMETHODCALLTYPE *IsIIDSupported )( + IRpcStubBuffer * This, + /* [in] */ REFIID riid); + + ULONG ( STDMETHODCALLTYPE *CountRefs )( + IRpcStubBuffer * This); + + HRESULT ( STDMETHODCALLTYPE *DebugServerQueryInterface )( + IRpcStubBuffer * This, + PVOID *ppv); + + PVOID ( STDMETHODCALLTYPE *DebugServerRelease )( + IRpcStubBuffer * This, + PVOID pv); + + END_INTERFACE + } IRpcStubBufferVtbl; \ No newline at end of file diff --git a/ctypes_generation/definitions/com/template.py b/ctypes_generation/definitions/com/template.py index 1de40cfc..6a0f1207 100644 --- a/ctypes_generation/definitions/com/template.py +++ b/ctypes_generation/definitions/com/template.py @@ -19,8 +19,8 @@ class COMInterface(ctypes.c_void_p): # So COMInterface completely bypass the HRESULT # return value check on restype by setting the restype to COMHRESULT - # But we add the 'errcheck' callbakc capacity for all COMInterface and subclasses - # So the default implem of the callbakc must have the same behavior as + # But we add the 'errcheck' callback capacity for all COMInterface and subclasses + # So the default implem of the callback must have the same behavior as # standard HRESULT restype. # This is why default errcheck callback call ctypes._check_HRESULT def _default_errcheck(self, result, func, args): @@ -42,12 +42,33 @@ def __repr__(self): description = "" if not self.value else "" return "<{0}{1} at {2:#x}>".format(type(self).__name__, description, id(self)) - # Simplified API for QueryInterface for interface embeding there IID - def query(self, interfacetype): - interface = interfacetype() - self.QueryInterface(interface.IID, interface) - return interface - + # Simplified API for QueryInterface for interface embeding their IID + # Or for string/Obj + def query(self, interface, target=None): + if isinstance(interface, str): # We have a GUID + interface_iid = IID.from_string(interface) + if target is None: + target = IUnknown() + elif issubclass(interface, COMInterface): # We have a PFW COM interface + interface_iid = interface.IID + if target is None: + target = interface() # Use an instance of the ComInterface as target of the QueryInterface + else: + # We have something else (A gdef.GUID probably) + interface_iid = interface + if target is None: + target = IUnknown() + self.QueryInterface(interface_iid, target) + return target + + def marshal(self, target_iid=None, destination=MSHCTX_NOSHAREDMEM, flags=MSHLFLAGS_NORMAL): + if target_iid is None: + target_iid = self.IID + mystream = windows.com.MemoryIStream.create() + windows.winproxy.CoMarshalInterface(mystream, target_iid, self, destination, 0, flags) + mystream.seek(0) + buffer = mystream.read(0xffffffff) # Todo: release stuff + return buffer diff --git a/ctypes_generation/definitions/defines/combase.txt b/ctypes_generation/definitions/defines/combase.txt new file mode 100644 index 00000000..aa7d9558 --- /dev/null +++ b/ctypes_generation/definitions/defines/combase.txt @@ -0,0 +1,29 @@ +#define ORPCF_NULL ( 0 ) +#define ORPCF_LOCAL ( 1 ) +#define ORPCF_RESERVED1 ( 2 ) +#define ORPCF_RESERVED2 ( 4 ) +#define ORPCF_RESERVED3 ( 8 ) +#define ORPCF_RESERVED4 ( 16 ) + +#define ORPCF_INPUT_SYNC ORPCF_RESERVED1 +#define ORPCF_ASYNC ORPCF_RESERVED2 +#define ORPCF_DYNAMIC_CLOAKING ORPCF_RESERVED3 + +#define ORPCF_REJECTED ORPCF_RESERVED1 +#define ORPCF_RETRY_LATER ORPCF_RESERVED2 + +#define OBJREF_SIGNATURE ( 0x574f454d ) +#define OBJREF_STANDARD ( 0x1 ) +#define OBJREF_HANDLER ( 0x2 ) +#define OBJREF_CUSTOM ( 0x4 ) +#define OBJREF_EXTENDED ( 0x8 ) +#define SORF_OXRES1 ( 0x1 ) +#define SORF_OXRES2 ( 0x20 ) +#define SORF_OXRES3 ( 0x40 ) +#define SORF_OXRES4 ( 0x80 ) +#define SORF_OXRES5 ( 0x100 ) +#define SORF_OXRES6 ( 0x200 ) +#define SORF_OXRES7 ( 0x400 ) +#define SORF_OXRES8 ( 0x800 ) +#define SORF_NULL ( 0 ) +#define SORF_NOPING ( 0x1000 ) \ No newline at end of file diff --git a/ctypes_generation/definitions/defines/specific_access_right.txt b/ctypes_generation/definitions/defines/specific_access_right.txt index 0779901e..12288ba3 100644 --- a/ctypes_generation/definitions/defines/specific_access_right.txt +++ b/ctypes_generation/definitions/defines/specific_access_right.txt @@ -258,15 +258,15 @@ #define FAX_JOB_MANAGE (0x0040) -// COM Specific Access Rights (Custom NAME) -// Based on internet search for "COM Access Mask" +// COM Specific Access Rights +// Based on https://learn.microsoft.com/en-us/windows/win32/com/access-control-lists-for-com -#define COM_EXECUTE (0x0001) -#define COM_EXECUTE_LOCAL (0x0002) -#define COM_EXECUTE_REMOTE (0x0004) -#define COM_ACTIVATE_LOCAL (0x0008) -#define COM_ACTIVATE_REMOTE (0x0010) +#define COM_RIGHTS_EXECUTE (0x0001) +#define COM_RIGHTS_EXECUTE_LOCAL (0x0002) +#define COM_RIGHTS_EXECUTE_REMOTE (0x0004) +#define COM_RIGHTS_ACTIVATE_LOCAL (0x0008) +#define COM_RIGHTS_ACTIVATE_REMOTE (0x0010) // // Section Access Rights. diff --git a/ctypes_generation/definitions/functions/com.txt b/ctypes_generation/definitions/functions/com.txt index 2c83230f..c5d51f7e 100644 --- a/ctypes_generation/definitions/functions/com.txt +++ b/ctypes_generation/definitions/functions/com.txt @@ -135,4 +135,31 @@ PVOID SysAllocString( VOID SysFreeString( [in, optional] BSTR bstrString -); \ No newline at end of file +); + + +HRESULT CreateStreamOnHGlobal( + [in] HGLOBAL hGlobal, + [in] BOOL fDeleteOnRelease, + [out] LPSTREAM *ppstm +); + +HRESULT GetHGlobalFromStream( + [in] LPUNKNOWN pstm, + [out] HGLOBAL *phglobal +); + +HRESULT CoMarshalInterface( + [in] LPUNKNOWN pStm, + [in] REFIID riid, + [in] LPUNKNOWN pUnk, + [in] DWORD dwDestContext, + [in, optional] LPVOID pvDestContext, + [in] DWORD mshlflags +); + +HRESULT CoUnmarshalInterface( + [in] PVOID pStm, + [in] REFIID riid, + [out] LPVOID *ppv +); diff --git a/ctypes_generation/definitions/functions/symbols.txt b/ctypes_generation/definitions/functions/symbols.txt index 826ff883..fa1d6211 100644 --- a/ctypes_generation/definitions/functions/symbols.txt +++ b/ctypes_generation/definitions/functions/symbols.txt @@ -109,28 +109,6 @@ BOOL WINAPI SymEnumSymbolsEx( _In_ DWORD Options ); -BOOL WINAPI SymEnumTypes( - _In_ HANDLE hProcess, - _In_ ULONG64 BaseOfDll, - _In_ PVOID EnumSymbolsCallback, - _In_ PVOID UserContext -); - -BOOL WINAPI SymEnumTypesByName( - _In_ HANDLE hProcess, - _In_ ULONG64 BaseOfDll, - _In_ PCSTR mask, - _In_ PVOID EnumSymbolsCallback, - _In_ PVOID UserContext -); - -BOOL WINAPI SymEnumTypesByNameW( - [in] HANDLE hProcess, - [in] ULONG64 BaseOfDll, - [in, optional] PCWSTR mask, - [in] PVOID EnumSymbolsCallback, - [in] PVOID UserContext -); BOOL WINAPI SymEnumerateModules64( _In_ HANDLE hProcess, @@ -438,4 +416,35 @@ BOOL SymSetSearchPath( BOOL SymSetSearchPathW( HANDLE hProcess, PCWSTR SearchPath +); + +BOOL SymEnumTypes( + [in] HANDLE hProcess, + [in] ULONG64 BaseOfDll, + [in] PSYM_ENUMERATESYMBOLS_CALLBACK EnumSymbolsCallback, + [in, optional] PVOID UserContext +); + +BOOL SymEnumTypesW( + [in] HANDLE hProcess, + [in] ULONG64 BaseOfDll, + [in] PSYM_ENUMERATESYMBOLS_CALLBACKW EnumSymbolsCallback, + [in, optional] PVOID UserContext +); + +BOOL SymEnumTypesByName( + [in] HANDLE hProcess, + [in] ULONG64 BaseOfDll, + [in, optional] PCSTR mask, + [in] PSYM_ENUMERATESYMBOLS_CALLBACK EnumSymbolsCallback, + [in] PVOID UserContext +); + + +BOOL SymEnumTypesByNameW( + [in] HANDLE hProcess, + [in] ULONG64 BaseOfDll, + [in, optional] PCWSTR mask, + [in] PSYM_ENUMERATESYMBOLS_CALLBACKW EnumSymbolsCallback, + [in] PVOID UserContext ); \ No newline at end of file diff --git a/ctypes_generation/definitions/interface_to_iid.txt b/ctypes_generation/definitions/interface_to_iid.txt index c32f9d91..11bea6d0 100644 --- a/ctypes_generation/definitions/interface_to_iid.txt +++ b/ctypes_generation/definitions/interface_to_iid.txt @@ -1,3 +1,4 @@ +// From Windows Header IScriptNode|0AEE2A94-BCBB-11D0-8C72-00C04FC2B085 IScriptEntry|0AEE2A95-BCBB-11D0-8C72-00C04FC2B085 IScriptScriptlet|0AEE2A96-BCBB-11D0-8C72-00C04FC2B085 @@ -7224,4 +7225,3083 @@ IWebApplicationUIEvents|5B2B3F99-328C-41D5-A6F7-7483ED8E71DD IWebApplicationUpdateEvents|3E59E6B7-C652-4DAF-AD5E-16FEB350CDE3 IWebApplicationHost|CECBD2C3-A3A5-4749-9681-20E9161C6794 IWebApplicationActivation|BCDCD0DE-330E-481B-B843-4898A6A8EBAC -IWebApplicationAuthoringMode|720AEA93-1964-4DB0-B005-29EB9E2B18A9 \ No newline at end of file +IWebApplicationAuthoringMode|720AEA93-1964-4DB0-B005-29EB9E2B18A94 +// From XP SP1 IDL files +ADODebugging|00000538-0000-0010-8000-00AA006D2EA4 +AsyncIRemUnknown2|000E0143-0000-0000-C000-000000000046 +AsyncIRemUnknown|000E0131-0000-0000-C000-000000000046 +ClusNodes|E9D74364-E986-11D0-A1CF-00A024AB73E5 +ClusNode|E9D74363-E986-11D0-A1CF-00A024AB73E5 +ClusProperties|E9D7436C-E986-11D0-A1CF-00A024AB73E5 +ClusProperty|E9D7436B-E986-11D0-A1CF-00A024AB73E5 +ClusResGroups|E9D74366-E986-11D0-A1CF-00A024AB73E5 +ClusResGroup|E9D74365-E986-11D0-A1CF-00A024AB73E5 +ClusResTypes|E9D7436A-E986-11D0-A1CF-00A024AB73E5 +ClusResType|E9D74369-E986-11D0-A1CF-00A024AB73E5 +ClusResources|E9D74368-E986-11D0-A1CF-00A024AB73E5 +ClusResource|E9D74367-E986-11D0-A1CF-00A024AB73E5 +Clusters|E9D74361-E986-11D0-A1CF-00A024AB73E5 +D3DXBaseMesh|A69BA991-1F7D-11D3-B929-00C04F68DC23 +D3DXBuffer|932E6A7E-C68E-45DD-A7BF-53D19C86DB1F +D3DXFont|2D501DF7-D253-4414-865F-A6D54A753138 +D3DXMesh|9D84AC46-6B90-49A9-A721-085C7A3E3DAE +D3DXPMesh|15981AA8-1A05-48E3-BBE7-FF5D49654E3F +D3DXRenderToSurface|69CC587C-E40C-458D-B5D3-B029E18EB60A +D3DXSPMesh|BC3BBDE2-1F7D-11D3-B929-00C04F68DC23 +D3DXSkinMesh|82A53844-F322-409E-A2E9-992E1104069D +D3DXSprite|E8691849-87B8-4929-9050-1B0542D5538C +DIDiskQuotaControl|7988B575-EC89-11CF-9C00-00AA00A14F56 +DIDiskQuotaUser|7988B57A-EC89-11CF-9C00-00AA00A14F56 +Direct3D7|9F76FDD5-8E92-11D1-8808-00C04FC2C602 +Direct3DDevice7|9F76FDD7-8E92-11D1-8808-00C04FC2C602 +Direct3DEnumDevices|9F76FDD3-8E92-11D1-8808-00C04FC2C602 +Direct3DEnumPixelFormats|9F76FDD6-8E92-11D1-8808-00C04FC2C602 +Direct3DRM3|9F76FE24-8E92-11D1-8808-00C04FC2C602 +Direct3DRMAnimation2|9F76FE22-8E92-11D1-8808-00C04FC2C602 +Direct3DRMAnimationArray|9F76FE35-8E92-11D1-8808-00C04FC2C602 +Direct3DRMAnimationSet2|9F76FE23-8E92-11D1-8808-00C04FC2C602 +Direct3DRMCallback|BBD5AD03-8E91-11D1-8808-00C04FC2C602 +Direct3DRMClippedVisual|9F76FE30-8E92-11D1-8808-00C04FC2C602 +Direct3DRMDevice3|9F76FE27-8E92-11D1-8808-00C04FC2C602 +Direct3DRMDeviceArray|9F76FE12-8E92-11D1-8808-00C04FC2C602 +Direct3DRMDeviceUpdateCallback3|9F76FE34-8E92-11D1-8808-00C04FC2C602 +Direct3DRMEnumerateObjectsCallback|BBD5AD04-8E91-11D1-8808-00C04FC2C602 +Direct3DRMFace2|9F76FE32-8E92-11D1-8808-00C04FC2C602 +Direct3DRMFaceArray|9F76FE18-8E92-11D1-8808-00C04FC2C602 +Direct3DRMFrame3|9F76FE25-8E92-11D1-8808-00C04FC2C602 +Direct3DRMFrameArray|9F76FE14-8E92-11D1-8808-00C04FC2C602 +Direct3DRMFrameInterpolator|5F4637E2-62AC-11D2-90B1-00C04FC2C602 +Direct3DRMFrameMoveCallback3|9F76FE33-8E92-11D1-8808-00C04FC2C602 +Direct3DRMInterpolator|9F76FE29-8E92-11D1-8808-00C04FC2C602 +Direct3DRMLightArray|9F76FE16-8E92-11D1-8808-00C04FC2C602 +Direct3DRMLightInterpolator|5F4637E4-62AC-11D2-90B1-00C04FC2C602 +Direct3DRMLight|9F76FE03-8E92-11D1-8808-00C04FC2C602 +Direct3DRMLoadCallback|BBD5AD0A-8E91-11D1-8808-00C04FC2C602 +Direct3DRMLoadTextureCallback3|BBD5AD16-8E91-11D1-8808-00C04FC2C602 +Direct3DRMMaterial2|9F76FE21-8E92-11D1-8808-00C04FC2C602 +Direct3DRMMaterialInterpolator|5F4637E6-62AC-11D2-90B1-00C04FC2C602 +Direct3DRMMeshBuilder3|9F76FE26-8E92-11D1-8808-00C04FC2C602 +Direct3DRMMeshInterpolator|5F4637E3-62AC-11D2-90B1-00C04FC2C602 +Direct3DRMMesh|9F76FE06-8E92-11D1-8808-00C04FC2C602 +Direct3DRMObjectArray|9F76FE11-8E92-11D1-8808-00C04FC2C602 +Direct3DRMObject|9F76FE0E-8E92-11D1-8808-00C04FC2C602 +Direct3DRMPick2Array|9F76FE19-8E92-11D1-8808-00C04FC2C602 +Direct3DRMPickArray|9F76FE17-8E92-11D1-8808-00C04FC2C602 +Direct3DRMProgressiveMesh|9F76FE31-8E92-11D1-8808-00C04FC2C602 +Direct3DRMShadow2|9F76FE36-8E92-11D1-8808-00C04FC2C602 +Direct3DRMTexture3|9F76FE28-8E92-11D1-8808-00C04FC2C602 +Direct3DRMTextureInterpolator|5F4637E5-62AC-11D2-90B1-00C04FC2C602 +Direct3DRMUserVisualCallback|BBD5AD06-8E91-11D1-8808-00C04FC2C602 +Direct3DRMUserVisual|9F76FE0C-8E92-11D1-8808-00C04FC2C602 +Direct3DRMViewport2|9F76FE20-8E92-11D1-8808-00C04FC2C602 +Direct3DRMViewportArray|9F76FE13-8E92-11D1-8808-00C04FC2C602 +Direct3DRMViewportInterpolator|5F4637E1-62AC-11D2-90B1-00C04FC2C602 +Direct3DRMVisualArray|9F76FE15-8E92-11D1-8808-00C04FC2C602 +Direct3DRMVisual|9F76FE0F-8E92-11D1-8808-00C04FC2C602 +Direct3DRMWrap|9F76FE08-8E92-11D1-8808-00C04FC2C602 +Direct3DVertexBuffer7|9F76FDDA-8E92-11D1-8808-00C04FC2C602 +DirectDraw4|BCAA7DA2-F7EF-11D2-93FD-00C04FC2C602 +DirectDraw7|9F76FDE7-8E92-11D1-8808-00C04FC2C602 +DirectDrawClipper|9F76FDCA-8E92-11D1-8808-00C04FC2C602 +DirectDrawColorControl|9F76FDE0-8E92-11D1-8808-00C04FC2C602 +DirectDrawEnumModes|9F76FFFF-8E92-11D1-8808-00C04FC2C602 +DirectDrawEnumSurfaces|9F76FDE6-8E92-11D1-8808-00C04FC2C602 +DirectDrawEnum|9F76FDE1-8E92-11D1-8808-00C04FC2C602 +DirectDrawGammaControl|9F76FDE9-8E92-11D1-8808-00C04FC2C602 +DirectDrawIdentifier|BCAA7DA4-F7EF-11D2-93FD-00C04FC2C602 +DirectDrawPalette|9F76FDC9-8E92-11D1-8808-00C04FC2C602 +DirectDrawSurface4|BCAA7DA3-F7EF-11D2-93FD-00C04FC2C602 +DirectDrawSurface7|9F76FDE8-8E92-11D1-8808-00C04FC2C602 +DirectInputDeviceInstance|9F76FA04-8E92-11D1-8808-00C04FC2C602 +DirectInputDevice|9F76FA03-8E92-11D1-8808-00C04FC2C602 +DirectInputEnumDevices|9F76FA09-8E92-11D1-8808-00C04FC2C602 +DirectInput|9F76FA02-8E92-11D1-8808-00C04FC2C602 +DirectMusicBand|FAFA35A3-8B72-11D2-90B2-00C04FC2C602 +DirectMusicChordMap|FAFA35A5-8B72-11D2-90B2-00C04FC2C602 +DirectMusicCollection|FAFA35A8-8B72-11D2-90B2-00C04FC2C602 +DirectMusicComposer|FAFA35A2-8B72-11D2-90B2-00C04FC2C602 +DirectMusicLoader|FAFA35A0-8B72-11D2-90B2-00C04FC2C602 +DirectMusicPerformance|FAFA35A7-8B72-11D2-90B2-00C04FC2C602 +DirectMusicSegmentState|FAFA35A6-8B72-11D2-90B2-00C04FC2C602 +DirectMusicSegment|FAFA35A1-8B72-11D2-90B2-00C04FC2C602 +DirectMusicStyle|FAFA35A4-8B72-11D2-90B2-00C04FC2C602 +DirectPlay4|9F76FF0F-8E92-11D1-8808-00C04FC2C602 +DirectPlayAddress|9F76FF05-8E92-11D1-8808-00C04FC2C602 +DirectPlayEnumConnections|9F76FF0A-8E92-11D1-8808-00C04FC2C602 +DirectPlayEnumLocalApplications|9F76FF0E-8E92-11D1-8808-00C04FC2C602 +DirectPlayEnumPlayers2|9F76FF0B-8E92-11D1-8808-00C04FC2C602 +DirectPlayEnumServiceProviders|9F76FF0D-8E92-11D1-8808-00C04FC2C602 +DirectPlayEnumSessions2|9F76FF0C-8E92-11D1-8808-00C04FC2C602 +DirectPlayLobby3|9F76FF10-8E92-11D1-8808-00C04FC2C602 +DirectPlayLobbyConnection|9F76FF06-8E92-11D1-8808-00C04FC2C602 +DirectPlayMessage|9F76FF11-8E92-11D1-8808-00C04FC2C602 +DirectPlaySessionData|9F76FF12-8E92-11D1-8808-00C04FC2C602 +DirectSound3DBuffer|9F76FB03-8E92-11D1-8808-00C04FC2C602 +DirectSound3DListener|9F76FB02-8E92-11D1-8808-00C04FC2C602 +DirectSoundBuffer|9F76FB01-8E92-11D1-8808-00C04FC2C602 +DirectSoundCaptureBuffer|9F76FB05-8E92-11D1-8808-00C04FC2C602 +DirectSoundCapture|9F76FB04-8E92-11D1-8808-00C04FC2C602 +DirectSoundEnum|9F76FB07-8E92-11D1-8808-00C04FC2C602 +DirectSound|9F76FB00-8E92-11D1-8808-00C04FC2C602 +DirectWeb|FAFA35B1-8B72-11D2-90B2-00C04FC2C602 +DirectXEvent|FAFA35B0-8B72-11D2-90B2-00C04FC2C602 +Domains|E9D7436E-E986-11D0-A1CF-00A024AB73E5 +I15e6e24f74324da99bd4c33db0df06c0|15E6E24F-7432-4DA9-9BD4-C33DB0DF06C0 +IACLCustomMRU|F729FC5E-8769-4F3E-BDB2-D7B50FD2275B +IADCCtl|3964D99F-AC96-11D1-9851-00C04FD91972 +IADsError|877C4BEE-3986-11D3-B6B8-0000F87A3388 +IADsSID|BCDB5F36-3AFE-11D3-B6B8-0000F87A3388 +IAImeContext|5F5B4ACB-D55D-492C-B596-F6390E1AD798 +IAImeProfile|B2AA53DF-21AB-40F2-B386-ED048CFC1C9D +IAImmFnDocFeed|6E098993-9577-499A-A830-52344F3E200D +IAImmThreadCompartment|D251A968-2B44-4DA5-A549-C1249EF01711 +IAMAudioDeviceConfig|4EC0CF93-3A74-4C7A-9533-7FAEA70B3D4E +IAMAudioDeviceControl|96E9F259-DFF4-4718-85A8-F161D205D0D8 +IAMAudioDuplexController|75950320-8872-49D3-B6B9-B93FC5C3016C +IAMDXTEffect|C4D81940-0607-11D2-A392-00E0291F3959 +IAMErrorLog|E43E73A2-0EFA-11D3-9601-00A0C9441E20 +IAMFilterData|97F7C4D4-547B-4A5F-8332-536430AD2E4D +IAMMixEffect|6BEE3A80-66C9-11D2-918F-00C0DF10D434 +IAMOutputBuffering|9EED4F01-B8A6-11D2-8023-00C0DF10D434 +IAMParserCallback|57C21D72-A9C0-11D2-8D1B-00A0C9441E20 +IAMSetErrorLog|963566DA-BE21-4EAF-88E9-35704F8F52A1 +IAMSilenceControl|A91B3C5A-3822-4578-A4BE-8A3B22AACFAB +IAMSmartRecompressor|6BEE3A83-66C9-11D2-918F-00C0DF10D434 +IAMTimelineComp|EAE58536-622E-11D2-8CAD-00A024580902 +IAMTimelineEffectable|EAE58537-622E-11D2-8CAD-00A024580902 +IAMTimelineEffect|BCE0C264-622D-11D2-8CAD-00A024580902 +IAMTimelineGroup|9EED4F00-B8A6-11D2-8023-00C0DF10D434 +IAMTimelineNode|92FAA040-6EBF-11D2-8CCD-00A0C9441E20 +IAMTimelineObj|78530B77-61F9-11D2-8CAD-00A024580902 +IAMTimelineSplittable|A0F840A0-D590-11D2-8D55-00A0C9441E20 +IAMTimelineSrcPriv|98990EEE-AE58-4CE9-9C66-6655B260F166 +IAMTimelineSrc|78530B79-61F9-11D2-8CAD-00A024580902 +IAMTimelineTrack|EAE58538-622E-11D2-8CAD-00A024580902 +IAMTimelineTransable|378FA386-622E-11D2-8CAD-00A024580902 +IAMTimelineTrans|BCE0C265-622D-11D2-8CAD-00A024580902 +IAMTimelineVirtualTrack|A8ED5F80-C2C7-11D2-8D39-00A0C9441E20 +IAMTimeline|78530B74-61F9-11D2-8CAD-00A024580902 +IAQAdmin|476D70A6-1A90-11D3-BFCB-00C04FA3490A +IAQEnumMessages|BA7AF302-7373-11D2-94E4-00C04FA379F1 +IAQMessageAction|1EB44A71-1E95-11D3-BFCC-00C04FA3490A +IAQMessage|BA7AF305-7373-11D2-94E4-00C04FA379F1 +IARPCtl|0CB57B2B-D652-11D1-B1DE-00C04FC2A118 +IASPEncryption|7F544CD0-760F-11D0-8B40-00C04FC324A4 +IASPObjectContextCustom|D97A6DA2-9C1C-11D0-9C3C-00A0C922E764 +IASPObjectContext|D97A6DA3-9C1C-11D0-9C3C-00A0C922E764 +IATVEFAnnouncement|841853FA-233D-4FEB-AEC5-996A92A88B9F +IATVEFAttrList|65CBFFD5-025B-40FB-A1E2-52BE96A84AFF +IATVEFAttrMap|F5F32EEC-0512-430A-B901-B2790C6BA34B +IATVEFInserterSession|185E3A8B-CF58-4B09-96EC-72E2B3EA8001 +IATVEFLine21Session|F1F7472F-9F5A-4C8D-BC04-319BF09BE8DF +IATVEFMedias|020B4A37-D95A-4821-8D69-7FAA361FE467 +IATVEFMedia|9900A6AF-68B2-4EFA-BE07-C9621F3EE215 +IATVEFMulticastSession|18166150-7B92-4536-AC63-DF8C215516D7 +IATVEFPackage_Helper|42CD67CB-4290-4034-A069-2304F5B6E8F1 +IATVEFPackage_Test|8266F7E4-B819-4156-AB8A-35A23BDF6C87 +IATVEFPackage|D158EA99-A18F-4924-AFC5-490CD22AD94C +IATVEFRouterSession|3EEDFB26-4165-46A5-B42C-080B2285DF5F +IATVEFStartStopList|A6D18E8F-9B32-49AD-BF7E-5E94E3FD5AED +IAVGeneralNotification|239A3C5D-8D41-11D1-B675-00C04FA3C554 +IAVTapi2|F12D527C-D9A8-412E-BA6A-4536B10DD571 +IAVTapiCall|8AF7D5C7-4421-11D1-B621-00C04FA3C554 +IAVTapiNotification|8AF7D5C5-4421-11D1-B621-00C04FA3C554 +IAVTapi|FB2FF4EA-337E-11D1-9B37-00C04FB9514E +IAbandonmentNotification|000001DE-0000-0000-C000-000000000046 +IAbout|3AC3AD56-7391-48A4-8837-60BCC3FB8D28 +IAcceptNotify|541EAAF0-717B-11CF-86CB-00AA00B4E1B8 +IAcceptor|79EACBE2-BAF9-11CE-8C82-00AA004BA90B +IAccessChecker|17A02985-0268-446D-B45C-FF5AF413775C +IAccessControlTest|2E9B11A0-D532-11CF-AEF3-00AA0044FB89 +IAccountDiscovery|FA202BBC-6ABE-4C17-B184-570B6CF256A6 +IAccount|5A67AADF-37DA-11D2-955A-004005A2F9B1 +IAcctRepl|33FF07B9-0AD8-4F58-9F35-D6D6403A5B1E +IAcquisitionManager|FD28545C-BC7D-43AB-BD8C-4716A7294521 +IActionTest|533F0457-C632-4D39-9B1B-1EA2D8B9F3CA +IActivationAgentInfo|000001A7-0000-0000-C000-000000000046 +IActivationContextInfo|000001A5-0000-0000-C000-000000000046 +IActivationPropertiesIn|000001A2-0000-0000-C000-000000000046 +IActivationPropertiesOut|000001A3-0000-0000-C000-000000000046 +IActivationProperties|000001AF-0000-0000-C000-000000000046 +IActivationSecurityInfo|000001A6-0000-0000-C000-000000000046 +IActivationStageInfo|000001A8-0000-0000-C000-000000000046 +IActiveIME_Private|5276CBE5-2130-4A60-BB76-8A5135448DEC +IActiveIMMAppEx|D7A6F58A-D478-44AB-86C9-591C23A26534 +IActiveXSafetyProvider|69FF5101-FC63-11D0-97EB-00AA00615333 +IActivityCenterHelp|70A157B0-3EDA-11D3-85BE-006097DF8C11 +IAdRotator|090ACFA0-1580-11D1-8AC0-00C0F00910F9 +IAddPrint|B57467A5-50B5-11D1-BF97-0000F8773501 +IAddressBarParser|C9D81948-443A-40C7-945C-5E171B8C66B4 +IAdminIndexServer|3BC4F3A0-652A-11D1-B4D4-00C04FC2DB8D +IAdvQueueAdmin|23700228-1D00-11D3-BFCB-00C04FA3490A +IAdvQueueConfig|EABA472E-BE94-11D1-A678-00C04FA3490A +IAdvQueueDomainType|47EA42AD-2667-11D2-A68B-00C04FA3490A +IAdvQueue|838258A9-4EEB-11D1-B2CD-00C04FC32984 +IAdvancedDialog|9DD92CA7-BF27-4FCB-AE95-1EAC48FC254D +IAgentDialer|41BE0602-4BE9-11D1-9B47-00C04FB9514E +IAggregator|000001D8-0000-0000-C000-000000000046 +IAlbumManager|2FCB92B6-64A8-4C61-9D96-8C48EA32379D +IAlgController|B71BFBF1-2AF2-4820-810C-4F8EFF838E60 +IAlgSetup|A779AF1A-009A-4C44-B9F0-8F0F4CF2AE49 +IAlgorithm|BF3D04A9-B0DA-4153-B45E-6CCFA5AC715B +IAlphaThumbnailExtractor|0F97F9D3-A7E2-4DB7-A9B4-C540BD4B80A9 +IAmTheTDC|3050F6C2-98B5-11CF-BB82-00AA00BDCE0B +IAnalyzerOutputPin|1D7CE554-C6C3-11D2-8E0B-00C04F799BB9 +IApartmentWork|0F29CE41-72FD-11D0-BF53-00AA00B8DFD2 +IApartment|0F29CE40-72FD-11D0-BF53-00AA00B8DFD2 +IAppEntry|E5065E80-0228-4469-9FAD-DE1F352A27FE +IAppHandler|A4181900-9A8E-11D1-ADF0-0000F8754B99 +IAppManagerActions|F427BD90-B12A-11D0-8D45-00A0C90DCAE7 +IAppManager|8D051768-5370-40AF-B149-2B265F39CCA2 +IAppParse|BAF56261-3C9F-44F9-9F30-6922DD29BD81 +IApplicationContext|7C23FF90-33AF-11D3-95DA-00A024A85B51 +IApplicationControl|3F3B1B86-DBBE-11D1-9DA6-00805F85CFE3 +IAssemblyBindSink|AF0BC960-0B9A-11D3-95CA-00A024A85B51 +IAssemblyBinding|CFE52A80-12BD-11D3-95CA-00A024A85B51 +IAssemblyCacheEmit|83D6B9AC-EFF9-45A3-8361-7C41DF1F9F85 +IAssemblyCacheImport|C920B164-33E0-4C61-B595-ECA4CDB04F12 +IAssemblyDownload|8A249B36-6132-4238-8871-A267029382A8 +IAssemblyFileInfo|66F171EA-BD29-4936-B391-4225C6D7361A +IAssemblyIdentity|AAA1257D-A56C-4383-9B4A-C868EDA7CA42 +IAssemblyManifestImport|696FB37F-DA64-4175-94E7-FDC8234539C4 +IAssemblyManifestImport|DE9A68BA-0FA2-11D3-94AA-00C04FC308FF +IAssemblyModuleImport|DA0CD4B0-1117-11D3-95CA-00A024A85B51 +IAssemblyScavenger|21B8916C-F28E-11D2-A473-00CCFF8EF448 +IAssemblyUpdate|301B3415-F52D-4D40-BDF7-31D82712C2DC +IAssembly|FF08D7D4-04C2-11D3-94AA-00C04FC308FF +IAssertConfig|00000156-0000-0000-C000-000000000046 +IAssocHandler|973810AD-9599-4B88-9E4D-6EE98C9552DA +IAssociationArrayInitialize|EE9165BF-A4D9-474B-8236-6735CB7E28B6 +IAssociationArray|3B877E3C-67DE-4F9A-B29B-17D0A1521C6A +IAssociationElement|E58B1ABF-9596-4DBA-8997-89DCDEF46992 +IAsyncWntCallback|4868EB72-41A6-4781-B261-4C81F18497C0 +IAsyncWnt|B974C800-2214-4C65-9BA0-CDE1430F9786 +IAsync|70000000-76D7-11CF-9AF1-0020AF6E72F4 +IAttributeDictionary|F42CFA19-EA06-4EB6-9891-D583F0CE46FC +IAttributesRaw|6BC096A8-0CE6-11D1-BAAE-00C04FC2E20D +IAttributes|6ADC653E-D5B9-422A-991A-A2B0119CEDAC +IAttribute|B17A8D78-B5A6-45F7-BA21-01AB94B08415 +IAudMixerPin|99B8E8C0-CCF1-11D2-9EF9-006008039E37 +IAudMixer|2A054190-C1D8-11D2-9EF7-006008039E37 +IAudioChannel|377D00F6-B92C-11D1-AA97-00C04FC9B202 +IAudioDevice|C515AA5E-B92B-11D1-AA97-00C04FC9B202 +IAuditSink|6BC0969A-0CE6-11D1-BAAE-00C04FC2E20D +IAuditSource|6BC0969B-0CE6-11D1-BAAE-00C04FC2E20D +IAutoDiscoveryProvider|9DCF4A37-01DE-4549-A9CB-3AC31EC23C4F +IAutoSock|BCC31109-E14A-11D2-835E-0080C7E11D99 +IAutoplayHandlerProperties|557730F6-41FA-4D11-B9FD-F88AB155347F +IAutoplayHandler|335E9E5D-37FC-4D73-8BA8-FD4E16B28134 +IAxWinAmbientDispatch|B6EA2051-048A-11D1-82B9-00C04FB9942E +IAxWinHostWindow|B6EA2050-048A-11D1-82B9-00C04FB9942E +IAzEnumJunctionPoint|DDBD8687-44A4-49FA-BCF6-71103B14B8C4 +IAzJunctionPoint|14A269D1-5DA3-4F00-A432-98C5FB2DE025 +IBDA_ECMMap|FA14A8B3-6068-48EF-96DD-53010B985A7D +IBDA_KSNode|9777DCF8-5F9A-406A-86B0-D74F26772382 +IBDA_Mpeg2CA|B0693766-5278-4EC6-B9E1-3CE40560EF5A +IBDA_Mpeg2Receiver|FEFF2C5B-997C-4196-965C-75EC89EF9EEA +IBagHole|450024A0-47D0-11D0-9E1E-00A0C916F120 +IBagInfo|B13FA471-4E1B-11D0-9E22-00A0C916F120 +IBalls|00000138-0001-0008-C000-000000000046 +IBasePropPage|B34E525B-9EB4-433B-8E0F-019C4F21D7E7 +IBasicConstraints|4E298C47-ABA6-459E-851B-993D6C626EAD +IBasicIMOld|59EC0340-7506-11D2-B05F-00C04F7F89FE +IBasicIMUser2|306C16F6-ECB9-4D60-9E48-84A01A25604F +IBasicIMUsers|59EC0343-7506-11D2-B05F-00C04F7F89FE +IBasicIMUser|59EC0342-7506-11D2-B05F-00C04F7F89FE +IBasicIM|936B70F8-75A1-455D-8F37-E211302D3B69 +IBidiRequestSpl|9C007000-FFA8-44FF-B2B3-AE9102C74D4C +IBigSwitcher|0C60D489-F676-4060-BF23-EF860264CFCD +IBindStatusCallbackHolder|79EAC9CC-BAF9-11CE-8C82-00AA004BA90B +IBindStatusCallbackMsg|79EAC9D5-BAF9-11CE-8C82-00AA004BA90B +IBindTest|00000138-0002-0008-C000-000000000046 +IBitmapSurfaceFactory|3050F2F2-98B5-11CF-BB82-00AA00BDCE0B +IBitmapSurface|3050F2EF-98B5-11CF-BB82-00AA00BDCE0B +IBitsTest1|51A183DB-67E0-4472-8602-3DBC730B7EF5 +IBlobDecoder|58D8562C-0755-45BF-B119-D09B63CF64C1 +IBlockedDrivers|13F176D6-9B1D-477D-BD33-6FE75E960578 +IBrowserCap|E0049863-0766-11D1-8AAB-00C0F00910F9 +IBuffer|000001B4-0000-0000-C000-000000000046 +IBuffer|89206B43-2FEA-4CDB-9653-EE274FA0782F +IBugRepSysInfo|30DAD827-DCA7-4E7E-A41E-EA5A8115BE4A +IBurnEngine|520CCA66-51A5-11D3-9144-00104BA11C5E +ICAComponentInternal|11166361-DF8A-463A-B620-7BEC23542010 +ICAComponents|11166470-DF8A-463A-B620-7BEC23542010 +ICAComponent|11166360-DF8A-463A-B620-7BEC23542010 +ICADefaultDlg|860A3FE2-DED1-40E2-896C-057681A8A1A8 +ICADenialsInternal|11166441-DF8A-463A-B620-7BEC23542010 +ICADenials|11166440-DF8A-463A-B620-7BEC23542010 +ICADenial|11166340-DF8A-463A-B620-7BEC23542010 +ICAManagerInternal|11166301-DF8A-463A-B620-7BEC23542010 +ICAManagerXProxy|11166302-DF8A-463A-B620-7BEC23542010 +ICAManager|11166300-DF8A-463A-B620-7BEC23542010 +ICAOffers|11166450-DF8A-463A-B620-7BEC23542010 +ICAOffer|11166350-DF8A-463A-B620-7BEC23542010 +ICAPod|BC8FDC47-18B3-4641-A783-2B836D60DC3F +ICAPoliciesInternal|11166421-DF8A-463A-B620-7BEC23542010 +ICAPolicies|11166420-DF8A-463A-B620-7BEC23542010 +ICAPolicy|11166320-DF8A-463A-B620-7BEC23542010 +ICARequest|11166310-DF8A-463A-B620-7BEC23542010 +ICAResDenialTree|11166898-DF8A-463A-B620-7BEC23542010 +ICATollsInternal|11166431-DF8A-463A-B620-7BEC23542010 +ICATolls|11166430-DF8A-463A-B620-7BEC23542010 +ICAToll|11166330-DF8A-463A-B620-7BEC23542010 +ICAbout|EA1621DC-3A2F-4B73-8899-6080E0CD439C +ICBCallback|CD117008-7004-11D0-9CCF-00A0C9081C19 +ICBTimer|CD117003-7004-11D0-9CCF-00A0C9081C19 +ICCertificate|873AE377-8509-44BA-BD12-5F0723DE6656 +ICChain|02DF22F8-CF55-465D-97A8-9D6F2EF9817C +ICDBurnPriv|C3D92D66-68AD-4B2A-86F5-4DFE97FBD2C7 +ICMenuExt|52ADFAA1-B9EE-40D4-9185-0C97A999854B +ICOMAdminCatalog|DD662187-DFC2-11d1-A2CF-00805FC79235 +ICSSFilterDispatch|9519152B-9484-4A6C-B6A7-4F25E92D6C6B +ICSServiceControl|47CDE9A1-0BF6-11D2-8016-00C04FB9988E +ICV3|CEBC955D-58AF-11D2-A30A-00A0C903492B +ICWUpdInfo|A3863C2D-86EB-11D1-A9DB-00C04FB16F9E +ICacheControl|59A47420-0094-11D2-BBF7-0060089F5FED +ICallFrameInit|FEDF0401-75D4-11D1-ADB8-00C04FC2ADC0 +ICallInfo|000001DC-0000-0000-C000-000000000046 +ICall|000001D6-0000-0000-C000-000000000046 +ICanHandleException|C5598E60-B307-11D1-B27D-006008C3FBFB +ICartridge|A00226E1-1B0D-11D0-8070-00A0C905F098 +ICatAdm|3BC4F3A2-652A-11D1-B4D4-00C04FC2DB8D +ICatalogSession|182C40FA-32E4-11D0-818B-00A0C9231C29 +ICatalogSetup|9864F70D-2CB3-11D2-B0FE-00805FC73204 +ICatalogTableInfo|A8927A41-D3CE-11D1-8472-006008B0E5CA +ICatalogTableRead1|0E3D6630-B46B-11D1-9D2D-006008B0E5CA +ICatalogTableWrite1|0E3D6631-B46B-11D1-9D2D-006008B0E5CA +ICatalogUtils|456129E2-1078-11D2-B0F9-00805FC73204 +ICategorizerAsyncContext|86F9DA7E-EB6E-11D1-9DF3-00C04FA322BA +ICategorizerDomainInfo|E210EDC6-F27D-481F-9DFC-1CA840905FD9 +ICategorizerItemAttributes|86F9DA7F-EB6E-11D1-9DF3-00C04FA322BA +ICategorizerItemRawAttributes|34C3D389-8FA7-11D2-9E16-00C04FA322BA +ICategorizerItem|86F9DA7C-EB6E-11D1-9DF3-00C04FA322BA +ICategorizerLdapConfig|27C1B2D3-1A28-4B90-BC0A-E52057D30712 +ICategorizerListResolve|960252A4-0A3A-11D2-9E00-00C04FA322BA +ICategorizerMailMsgs|86F9DA80-EB6E-11D1-9DF3-00C04FA322BA +ICategorizerParametersEx|E962BA1F-3FB9-11D3-80D7-00C04FA322BA +ICategorizerParameters|86F9DA7B-EB6E-11D1-9DF3-00C04FA322BA +ICategorizerProperties|96BF3199-79D8-11D2-9E11-00C04FA322BA +ICategorizerQueries|86F9DA7D-EB6E-11D1-9DF3-00C04FA322BA +ICategorizerRequestedAttributes|CB0924E0-357B-11D3-8328-00C04FA322BA +ICategorizerUTF8Attributes|BEBF931D-17E0-4EC8-BC1C-CC3286D72CB7 +ICb32CoreNotify|C7047722-CABE-11D0-A041-444553540000 +ICb32Core|C7047721-CABE-11D0-A041-444553540000 +ICertAdminD2|7FE0D935-DDA6-443F-85D0-1CFB58FE41DD +ICertAdminD|D99E6E71-FC88-11D0-B498-00A0C90312F3 +ICertDBBackup|92A56660-8BD5-11D3-B32E-00C04F79DC72 +ICertDBRestore|93042400-8BD5-11D3-B32E-00C04F79DC72 +ICertDBRow|924B3E50-8BD5-11D3-B32E-00C04F79DC72 +ICertDB|93582F50-8BD5-11D3-B32E-00C04F79DC72 +ICertTemplatesSnapin|65982245-E649-4611-94A0-D92E86E81604 +ICertificateManager|53D6AB1B-2488-11D1-A28C-00C04FB94F17 +ICertificateStatus|AB769053-6D38-49D4-86EF-5FA85ED3AF27 +ICertificates|68646716-BDA0-4046-AB82-4444BC93B84A +ICertificate|0BBA0B86-766C-4755-A443-243FF2BD8D29 +ICfgComp|BB0D7186-3C44-11D2-BB98-3078302C2030 +ICfgMntAdmin|0F219CC0-15C1-11D1-A449-00C04FB99B01 +ICfgMntVersions|6B40438A-180E-11D1-A44A-00C04FB99B01 +IChain|77F6F881-5D3A-4F2F-AEF0-E4A2F9AA689D +IChangeDomain|CCA8808B-806C-446B-92B4-6C956717C645 +IChannelLineups|2F78C3E1-98FE-4526-A0A7-A621025AEFF6 +IChannelLineup|AB3FF8DB-C718-4ABD-98DE-E14DC74F4872 +IChannelStreamPinEnum|5CA8D468-C79A-11D2-8E0C-00C04F799BB9 +IChannels|3BAE53BD-70F0-4C7B-8C9E-E0317FFF8D79 +IChannel|ED7DF8CD-4861-4389-8149-8EDE63A51F38 +ICheckBox|3050F685-98B5-11CF-BB82-00AA00BDCE0B +ICheckErrorCollection|A4FA4E11-EF45-11D0-9E65-00C04FB94FEF +ICheckError|A4FA4E18-EF45-11D0-9E65-00C04FB94FEF +ICimModule|959F3800-1D92-11D2-9BF1-00A0C94BABD6 +ICimNotify|189FA9E0-21D8-11D2-9BFA-00A0C94BABD6 +IClassAccess|00000190-0000-0000-C000-000000000046 +IClassAdmin|00000191-0000-0000-C000-000000000046 +IClassClassicInfo|000001E2-0000-0000-C000-000000000046 +IClassExtSnap|D44A9455-D873-48A9-A2A0-E55A8065B7EB +IClipboardNotify|7502CA02-4ACA-11CF-B63C-0080C792B782 +IClipboard|7502CA01-4ACA-11CF-B63C-0080C792B782 +ICloneSecurityPrincipal|5DBE4242-0746-11D3-B56E-00C04F79DDC2 +IClusCfgAsyncEvictCleanup|52C80B95-C1AD-4240-8D89-72E9FA84025E +IClusCfgBaseCluster|A8A5C613-2518-47F5-96CA-CAFA7FFBAF68 +IClusCfgCallback|238DCA63-E2EF-4F32-A24D-ACBF975BE842 +IClusCfgCapabilities|D94AB253-36C7-41C1-B52E-26B451975C8D +IClusCfgClusterConnection|CE6EF90C-3602-41E7-95BD-AAFD37A676DF +IClusCfgClusterInfo|85B4BBC0-DDC4-4AE7-8268-F4850BB2A6EE +IClusCfgCredentials|54AA9406-A409-4B49-B314-5F0A0CE4C88E +IClusCfgEvictCleanup|6FE3E361-D373-4C5F-A0AF-1DFE8493C655 +IClusCfgGroupCfg|DCB6D3D2-A55F-49E5-A64A-0CCFEB01ED3A +IClusCfgIPAddressInfo|AAEAF0A5-E310-4604-A55E-2F9DDC4157A8 +IClusCfgInitialize|2A0EB82D-F878-492A-951E-AE000918C4A6 +IClusCfgManagedResourceCfg|60300A0F-77E1-440C-BD94-6BFB0DBFDB3A +IClusCfgManagedResourceInfo|E0324847-1520-41B0-B960-54198DA5F8AF +IClusCfgMemberSetChangeListener|2B64534F-2643-4ABC-A4E5-824D881B7582 +IClusCfgNetworkInfo|19FC7580-950A-44A6-966E-74B14B20918F +IClusCfgNodeInfo|E4B5FA15-DD07-439E-A623-8823524E3D19 +IClusCfgPartitionInfo|EC1EBD9F-5866-4846-8952-EC36C3961EEE +IClusCfgPollingCallbackInfo|2AF55DA7-CB6F-40DE-BB11-6673464B2C54 +IClusCfgPollingCallback|C72DB1FD-51A2-43E6-B708-D9DB7DA79630 +IClusCfgResTypeServicesInitialize|6E109698-DFC4-4471-ACE1-0414931B3BB3 +IClusCfgResourceCreate|0647B41A-C777-443C-9432-02CCCF4FF443 +IClusCfgResourcePostCreate|72A9BF54-13B6-451F-910D-6913EBF025AB +IClusCfgResourcePreCreate|4240F6A1-9D49-427E-8F3D-09384E1F59E4 +IClusCfgResourceTypeCreate|3AFCE3B8-5F3E-4DDF-A8F4-4B4FCBF28F8F +IClusCfgResourceTypeInfo|C649A281-C847-4F5C-9841-D2F73B5AA71D +IClusCfgServer|4C06EAE6-990E-4051-8AA1-AD4B4EAE9CAF +IClusCfgSetCredentials|58E6E5B9-4788-4D9A-8255-1E274E5DCCB0 +IClusCfgStartupListener|D282CAEF-2EDE-4AB9-A5D5-F7BDE3D23F0F +IClusCfgStartupNotify|C2B0D069-6353-4EE1-B253-6B0D75DB2CD3 +IClusCfgVerify|D47BBEEC-2286-4514-AA90-7E88BD0FE543 +IClusCfgWizard|2EB57A3B-DA8D-4B56-97CF-A3191BF8FD5B +IClusterApplicationWizard|24F97151-6689-11D1-9AA7-00C04FB93A80 +IClusterApplication|E9D74360-E986-11D0-A1CF-00A024AB73E5 +IClusterDomain|E9D7436D-E986-11D0-A1CF-00A024AB73E5 +IClusterQuorumResource|645B5A82-BC6E-11D0-8F45-000000000000 +IClusterResControl|C56292B2-DD10-11D0-8490-00A0C90C13F8 +IClusterResource|E2C31D50-BC17-11D0-A431-00C04FD735A9 +ICluster|E9D74362-E986-11D0-A1CF-00A024AB73E5 +ICodebaseList|D8FB9BD6-3969-11D3-B4AF-00C04F8ECB26 +ICollection|C34C8CE7-B253-4F89-AA25-8A24AD71D0C0 +IColorCycleBehavior|82E9CD26-42BB-11D2-BB98-00A0C999C4C1 +IColorGenerator|40D77610-E082-11D2-8D5E-00A0C9441E20 +IColumnSettings|3D4DBB00-9203-45A1-B3D3-531405160DB7 +IColumnSetting|61CCA458-28CA-48BE-8D08-BEF0401A5DC4 +IComCatalog2Internal|3310DAB4-EDC0-4CE9-8A9C-8FEA2980FD89 +IComCatalog2|000001FA-0000-0000-C000-000000000046 +IComCatalogInternal|A6304910-4115-11D2-8133-0060089F5FED +IComCatalogLocation|FAE51051-9887-47F2-AF44-7392BF90039B +IComCatalogSCM|000001FD-0000-0000-C000-000000000046 +IComCatalog|000001E0-0000-0000-C000-000000000046 +IComClassInfo2|000001E4-0000-0000-C000-000000000046 +IComClassInfo|000001E1-0000-0000-C000-000000000046 +IComDispatchInfo|000001D9-0000-0000-C000-000000000046 +IComObjIdentity|000001D7-0000-0000-C000-000000000046 +IComProcessInfo2|6ACFC1BF-3882-45B1-96A3-AB948A267D38 +IComProcessInfo|000001ED-0000-0000-C000-000000000046 +IComServices2|61A7D610-42EB-43D2-A55F-1904D3294DAA +IComServices|000001F5-0000-0000-C000-000000000046 +ICombobox|3050F677-98B5-11CF-BB82-00AA00BDCE0B +ICommonDialog|A5064421-D541-11D4-9523-00B0D022CA64 +ICommonInterfaceConfigService|EB453BAA-08F1-4235-ABF0-521C7AA0EDA1 +ICompData|1DCBBC99-77D1-456D-BA21-89456CC5F3B7 +IComponentNotify|6BC09893-0CE6-11D1-BAAE-00C04FC2E20D +IComponentRegistrar|A817E7A2-43FA-11D0-9E44-00AA00B6770A +ICompositeFolder|601AC3DD-786A-4EB0-BF40-EE3521E70BFB +IComputerMigration|FE808F47-442A-48E0-B9BB-471843C01018 +IComputerPwdAge|2D4FDF5A-6F8C-44C8-A294-DAD45D010DC3 +IConditionText|6BC098A2-0CE6-11D1-BAAE-00C04FC2E20D +ICondition|6BC098A1-0CE6-11D1-BAAE-00C04FC2E20D +IConfExplorerDetailsView|90381EC6-3603-11D1-9B39-00C04FB9514E +IConfExplorerTreeView|90381ECC-3603-11D1-9B39-00C04FB9514E +IConfExplorer|90381ECB-3603-11D1-9B39-00C04FB9514E +IConfRoomTreeView|CC9D6B21-4A3F-11D1-B626-00C04FA3C554 +IConfRoom|CC9D6B1F-4A3F-11D1-B626-00C04FA3C554 +IConfigurationConnection|DDAD8191-66C5-4A30-A4DF-CB6C216704CA +IConfigureWbemClassInfoFilter|D36B512D-C03A-11D0-AD64-00C04FD8FDFF +IConfigureWbemProjector|D36B512B-C03A-11D0-AD64-00C04FD8FDFF +IConfigureWbemQl1Filter|0682F5D6-C03B-11D0-AD64-00C04FD8FDFF +IConfigureYourServer|C8A282E5-AB72-4852-BDC0-1894278E93C2 +IConnectedMachine|854C316C-C854-4A77-B189-606859E4391B +IConnectionInfo|15182CE3-82D7-473F-92DE-706E2BCEA902 +IConnectionManager|B198B19B-C346-11D1-A67D-00C04FA3490A +IConnectionManager|C0017768-1BF3-4352-8D6C-3A8C1D0FB477 +IConnectionManager|FA84E6F2-0B7B-11D2-BDCB-00C04FA35447 +IConnectionRetryManager|B870CE2B-A755-11D2-A6A9-00C04FA3490A +IConnectionRetrySink|B870CE2A-A755-11D2-A6A9-00C04FA3490A +IConnection|0108A95E-B23E-4372-841B-8153FD529A6E +IConnectorInput|6BC096AF-0CE6-11D1-BAAE-00C04FC2E20D +IConnector|6BC096AE-0CE6-11D1-BAAE-00C04FC2E20D +IContentProxy|EF508011-C806-4356-8492-D15E616F6F37 +IContentRotator|B4E90800-B83C-11D0-8B40-00C0F00AE35A +IContextMenu|000214E4-0000-0000-0000-C00000000046 +IContextMenu|91CC37D7-CE2B-11D1-B44D-7E92AF000000 +IControlMarkup|50CF8C58-029D-41BF-B8DD-4CE4F95D9257 +ICounterCtl|89B9D28A-AAEB-11D0-9796-00A0C908612D +ICourier|79EACBE6-BAF9-11CE-8C82-00AA004BA90B +ICrActionBvr|3045D45A-8304-11D2-9533-0060B0C3C4F4 +ICrActorBvr2|B93D15FC-AFC3-11D2-B0DE-00A0C999C4C0 +ICrActorBvr|484C7A41-736C-11D2-A5E8-00A0C967A25F +ICrBarn2|B66A7A1B-8FC6-448C-A2EB-3C55957478A1 +ICrBarn|276A2EE0-0B5D-11D2-A484-00C04F8EFB69 +ICrBehaviorFactory|754FF232-5D4E-11D2-875B-00A0C93C09B3 +ICrBlinds2|7059D403-599A-4264-8140-641EB8AE1F64 +ICrBlinds|5AF5C340-0BA9-11D2-A484-00C04F8EFB69 +ICrBlur|9F7C7827-E87A-11D1-81E0-0000F87557DB +ICrColorBvr|3845A173-EB30-11D1-9A23-00A0C879FE5F +ICrEffectBvr|54274111-7A5E-11D2-875F-00A0C93C09B3 +ICrEmboss|E4ACFB80-053E-11D2-81EA-0000F87557DB +ICrEngrave|E4ACFB7F-053E-11D2-81EA-0000F87557DB +ICrInset|05C5EE20-0BA6-11D2-A484-00C04F8EFB69 +ICrIris2|F7B06961-BA8C-4970-918B-1C60CB9FF180 +ICrIris|3F69F350-0379-11D2-A484-00C04F8EFB69 +ICrMoveBvr2|2DDEABE2-FAA5-11D2-B9DD-00C04F6843FA +ICrMoveBvr|C5B86F31-69EE-11D2-875F-00A0C93C09B3 +ICrNumberBvr|ECDB03D1-6E99-11D2-875F-00A0C93C09B3 +ICrPathBvr|80F49561-6A9A-11D2-875F-00A0C93C09B3 +ICrRadialWipe|424B71AE-0695-11D2-A484-00C04F8EFB69 +ICrRotateBvr|027713F1-5FA8-11D2-875B-00A0C93C09B3 +ICrScaleBvr|E80353D1-677D-11D2-875E-00A0C93C09B3 +ICrSetBvr|BA60F741-6F72-11D2-875F-00A0C93C09B3 +ICrShatter|63500AE1-0858-11D2-8CE4-00C04F8ECB10 +ICrSlide|810E402E-056B-11D2-A484-00C04F8EFB69 +ICrSpiral|0DE527A0-0C7E-11D2-A484-00C04F8EFB69 +ICrStretch|6684AF00-0A87-11D2-A484-00C04F8EFB69 +ICrWheel|3943DE80-1464-11D2-A484-00C04F8EFB69 +ICrZigzag|4E5A64A0-0C8B-11D2-A484-00C04F8EFB69 +ICreateTable|5A67AAE1-37DA-11D2-955A-004005A2F9B1 +ICreateWbemMultiFilter|10CD7C51-C03B-11D0-AD64-00C04FD8FDFF +ICryptPKO|7444C716-39BF-11D1-8CD9-00C04FC29D45 +ICryptSig|7444C718-39BF-11D1-8CD9-00C04FC29D45 +ICube|00000139-0001-0008-C000-000000000046 +ICustomIconManager|7E23D323-36D6-4EB2-A654-387832868EA3 +ICustomRatingHelper|D0D9842D-E211-4B2C-88DC-BC729342DFCB +ICustomizeInfoTip|DA22171F-70B4-43DB-B38F-296741D1494C +IDA2Array|2A8F0B06-BE2B-11D1-B219-00C04FC2A0CA +IDA2Behavior|9CADDC0C-AD56-11D1-9FF8-00C04FA32195 +IDA2Color|28A4B924-61FE-11D2-A740-00C04F79754C +IDA2Event|B90E525A-574A-11D1-8E7B-00C04FC29D46 +IDA2FontStyle|960D8EFF-E494-11D1-AB75-00C04FD92B6B +IDA2Geometry|B90E5258-574A-11D1-8E7B-00C04FC29D46 +IDA2Image|B90E5259-574A-11D1-8E7B-00C04FC29D46 +IDA2LineStyle|5F00F545-DF18-11D1-AB6F-00C04FD92B6B +IDA2Statics|FA261CF0-C44E-11D1-9BE4-00C04FC2F51D +IDA2ViewerControlWindowed|A3034056-EC1C-11D1-9BE8-00C04FC2F51D +IDA2ViewerControl|F3E1B522-D8A6-11D1-9BE5-00C04FC2F51D +IDA2View|2AE71568-4B34-11D1-B1E3-00C04FC2A0CA +IDA3Array|3089D9A0-4CE1-11D2-933E-00A0C9B72D4D +IDA3Geometry|EB5093C7-56F9-11D2-88CE-00C04FA35859 +IDA3Image|AD083DBB-5817-11D2-ABA1-00C04FD92B6B +IDA3Statics|6E0B5FC4-4D1E-11D2-AA53-00C04FC2F60F +IDA3ViewerControlWindowed|09509867-79AA-11D2-8BF5-00C04FC2F51D +IDA3ViewerControl|09509866-79AA-11D2-8BF5-00C04FC2F51D +IDA3View|D5570790-57E2-11D2-933F-00A0C9B72D4D +IDAArray|D17506C2-6B26-11D0-8914-00C04FC2A0CA +IDABbox2|C46C1BCD-3C52-11D0-9200-848C1D000000 +IDABbox3|C46C1BDD-3C52-11D0-9200-848C1D000000 +IDABehavior|283807B7-2C60-11D0-A31D-00AA00B92C03 +IDABoolean|C46C1BC0-3C52-11D0-9200-848C1D000000 +IDABvrHook|3E2487C4-8709-11D0-B177-00C04FC2A0CA +IDACamera|C46C1BE1-3C52-11D0-9200-848C1D000000 +IDAColor|C46C1BC5-3C52-11D0-9200-848C1D000000 +IDADXTransformResult|BACD4D86-4A4F-11D1-9BC8-00C04FC2F51D +IDADashStyle|C46C1BEF-3C52-11D0-9200-848C1D000000 +IDADrawingSurface|BC0BFD34-D21D-11D0-9385-00C04FB6BD36 +IDAEndStyle|C46C1BEB-3C52-11D0-9200-848C1D000000 +IDAEvent|50B4791E-4731-11D0-8912-00C04FC2A0CA +IDAFontStyle|25B0F91D-D23D-11D0-9B85-00C04FC2F51D +IDAGeometry|C46C1BDF-3C52-11D0-9200-848C1D000000 +IDAImage|C46C1BD3-3C52-11D0-9200-848C1D000000 +IDAImportationResult|4A933702-E36F-11D0-9B99-00C04FC2F51D +IDAImport|FC54BEAA-5B12-11D1-8E7B-00C04FC29D46 +IDAJoinStyle|C46C1BED-3C52-11D0-9200-848C1D000000 +IDALBehavior|D2A88CB6-C16D-11D1-A4E0-00C04FC29D46 +IDALEventCB|D2A88CB5-C16D-11D1-A4E0-00C04FC29D46 +IDALFactory|D2A88CB8-C16D-11D1-A4E0-00C04FC29D46 +IDALImportBehavior|95057368-DBC6-11D1-A00B-00C04FA32195 +IDALSequenceBehavior|445DE915-C3D8-11D1-A001-00C04FA32195 +IDALSingleBehavior|445DE914-C3D8-11D1-A001-00C04FA32195 +IDALTrack|D2A88CB7-C16D-11D1-A4E0-00C04FC29D46 +IDALineStyle|C46C1BF1-3C52-11D0-9200-848C1D000000 +IDAMatte|C46C1BD1-3C52-11D0-9200-848C1D000000 +IDAMicrophone|C46C1BE5-3C52-11D0-9200-848C1D000000 +IDAModifiableBehavior|FC54BEAB-5B12-11D1-8E7B-00C04FC29D46 +IDAMontage|C46C1BD5-3C52-11D0-9200-848C1D000000 +IDANumber|9CDE7340-3C20-11D0-A330-00AA00B92C03 +IDAPair|C46C1BF3-3C52-11D0-9200-848C1D000000 +IDAPath2|C46C1BCF-3C52-11D0-9200-848C1D000000 +IDAPickableResult|4A933703-E36F-11D0-9B99-00C04FC2F51D +IDAPoint2|C46C1BC7-3C52-11D0-9200-848C1D000000 +IDAPoint3|C46C1BD7-3C52-11D0-9200-848C1D000000 +IDAPreferences|69B5BC70-9B19-11D0-9B60-00C04FC2F51D +IDASite|45393DF0-54B9-11CF-92A2-00AA00B8A733 +IDASound|C46C1BE3-3C52-11D0-9200-848C1D000000 +IDASource|57C21D70-A9C0-11D2-8D1B-00A0C9441E20 +IDAStatics|542FB452-5003-11CF-92A2-00AA00B8A733 +IDAString|C46C1BC3-3C52-11D0-9200-848C1D000000 +IDATASRCListener|3050F380-98B5-11CF-BB82-00AA00BDCE0B +IDATransform2|C46C1BCB-3C52-11D0-9200-848C1D000000 +IDATransform3|C46C1BDB-3C52-11D0-9200-848C1D000000 +IDATuple|5DFB2650-9668-11D0-B17B-00C04FC2A0CA +IDAUntilNotifier|3F3DA01A-4705-11D0-8710-00C04FC29D46 +IDAUserData|AF868305-AB0B-11D0-876A-00C04FC29D46 +IDAVNamespaceArbiter|72A58FF8-227D-11D2-A8B5-0000F8084F96 +IDAVector2|C46C1BC9-3C52-11D0-9200-848C1D000000 +IDAVector3|C46C1BD9-3C52-11D0-9200-848C1D000000 +IDAViewSite|283807B3-2C60-11D0-A31D-00AA00B92C03 +IDAViewerControlWindowed|BA8B033E-1E91-11D1-8809-00C04FC29D46 +IDAViewerControl|0E41257B-812D-11D0-9B4A-00C04FC2F51D +IDAView|283807B4-2C60-11D0-A31D-00AA00B92C03 +IDCTAgent|FAAB808F-FEA2-49D8-992E-E2A95E8BFE2B +IDCTDispatcher|242E5D88-8183-443C-9E27-16C64057B8C5 +IDDropDispatcher|A1929AB0-AA50-11D0-A9EB-00AA00685C74 +IDDropFilter|E5E1E870-AA50-11D0-A9EB-00AA00685C74 +IDIBMediaStream|F12780AF-5C60-11D1-BC46-00AA00A13C86 +IDIBProducer|9777AD62-7575-11D1-BC47-00AA00A13C86 +IDIBStreamSample|F12780AE-5C60-11D1-BC46-00AA00A13C86 +IDLLHost|00000141-0000-0000-C000-000000000046 +IDSNGenerationSink|E6641D7D-92AA-484B-BD5D-7099478CB2FE +IDSPrintQueue|435899C8-44AB-11D1-AF00-080036234103 +IDVDRect|90598166-2297-40ED-9AB2-59FD8E368FB2 +IDVGetEnum|70F55181-5FEA-4900-B6B8-7343CB0A348C +IDVRAnalysisBufferPriv|BFC89F48-481A-43A3-9270-35F788B3B1C0 +IDVRAnalysisBuffer|7808403B-C95B-4493-918E-8D01051B28CD +IDVRAnalysisConfig|09DC9FEF-97AD-4CAB-8252-9683BC8778F2 +IDVRAnalysisFilterHostFactory|7D682D10-DA8E-4865-A13C-FEA0C5FC9990 +IDVRAnalysisLogicProp|7ACEA8FF-FF70-40DA-B4C2-77F772DBF554 +IDVRAnalysisMpeg2RecvStats|B0F879B6-8EF1-4BB0-AD30-31CB0CEE741F +IDVRAnalyze|917E8B35-0DA4-4E1D-A148-B59604BC178A +IDVRAsyncReader|4FF0994F-4602-4C3B-83AE-2B53DC550A31 +IDVRAsyncWriter|1CBEC55E-D820-4AB2-99A1-E6C47FA2B3C6 +IDVRFileSink2|D1D7769C-9734-40FF-91FC-501F2F2FBC70 +IDVRFileSink|05F48AC7-1E70-4E04-8F8D-FEA9E31E62D9 +IDVRFileSink|BCA40DA2-8183-4466-BB77-9A5C913EC870 +IDVRFileSource2|42FBFC99-4CD2-413B-87BE-AB73240A0657 +IDVRFileSource|A42BF84C-33C1-4A55-A7CA-2C42E21160BB +IDVRIORecordingAttributes|E47B4648-F1A0-4A69-8155-23F2B7240AE6 +IDVRInputPins|62E155B7-5455-4AF5-A4BE-284BC1E51972 +IDVRMpeg2VideoStreamStats|7912EA15-3F99-4E29-9D08-A5DFC9A79862 +IDVRMpeg2VideoStreamStats|FBE0B789-C2D8-4313-B8A1-0883B0E1A8F8 +IDVRPlayrate|AFC7A0A6-0950-4999-AE6E-8973AADBF7DE +IDVRPolicy|8C3DF0A2-3258-41AA-932A-C41BAFCA49A2 +IDVRPostAnalysisSend|4A3A810B-BEF8-4D0F-9095-A88E7B2BA924 +IDVRReader|20E8F795-AB81-46CA-A53C-E2B3239DC17A +IDVRReader|68B3A699-3B34-4C02-92FF-D71DF87B89BE +IDVRReceiverStats|57798833-6281-4A4B-A853-52D6BB2D4D37 +IDVRReceiverStats|D0E0C292-1C22-48C6-8EE3-C4A84EE2202D +IDVRRecorderWriter|7ADC91A6-3270-4C18-AAFD-EC6788876CAF +IDVRRecorder|9B22180D-33C1-449C-9A21-58384451B790 +IDVRRingBufferWriter|6DB42506-0422-46C6-ADE5-0139874BBF4F +IDVRRingBufferWriter|A1B75A7B-EE47-4390-BB5A-725E64681135 +IDVRSenderStats|2F4F132C-A07E-4C61-B21E-14B977BEEDB0 +IDVRSenderStats|D6194C9D-D3A8-4034-8268-E8BF25EAFC4E +IDVRSourceAdviseSink|5DC4077F-C6B3-4786-8D8C-6A0869565387 +IDVRStreamSinkPriv|600FD4EA-CF1A-4C39-9914-5E0F0B7586C1 +IDX2DDebug|03BB2457-A279-11D1-81C6-0000F87557DB +IDX2D|9EFD02A9-A996-11D1-81C9-0000F87557DB +IDXARGBReadPtr|EAAAC2D6-C290-11D1-905D-00C04FD9189D +IDXARGBReadWritePtr|EAAAC2D7-C290-11D1-905D-00C04FD9189D +IDXARGBSurfaceInit|9EA3B63A-C37D-11D1-905E-00C04FD9189D +IDXBaseObject|17B59B2B-9CC8-11D1-9053-00C04FD9189D +IDXBasicImage|16B280C7-EE70-11D1-9066-00C04FD9189D +IDXDCLock|0F619456-CF39-11D1-905E-00C04FD9189D +IDXDLUTBuilder|73068231-35EE-11D1-81A1-0000F87557DB +IDXDMapper|7FD9088B-35ED-11D1-81A1-0000F87557DB +IDXEffect|E31FB81B-1335-11D1-8189-0000F87557DB +IDXGradient2|D0EF2A80-61DC-11D2-B2EB-00A0C936B212 +IDXGradient|B2024B51-EE77-11D1-9066-00C04FD9189D +IDXLUTBuilder|F4370FC1-CADB-11D0-B52C-00A0C9054373 +IDXLookupTable|01BAFC7F-9E63-11D1-9053-00C04FD9189D +IDXMapper|555278E5-05DB-11D1-883A-3C8B00C10000 +IDXPixelate|D33E180F-FBE9-11D1-906A-00C04FD9189D +IDXRasterizer|9EA3B635-C37D-11D1-905E-00C04FD9189D +IDXRawSurface|09756C8A-D96A-11D1-9062-00C04FD9189D +IDXSurfaceFactory|144946F5-C4D4-11D1-81D1-0000F87557DB +IDXSurfaceInit|9EA3B639-C37D-11D1-905E-00C04FD9189D +IDXSurfaceModifier|9EA3B637-C37D-11D1-905E-00C04FD9189D +IDXSurfacePick|30A5FB79-E11F-11D1-9064-00C04FD9189D +IDXSurface|B39FD73F-E139-11D1-9065-00C04FD9189D +IDXTAlphaImageLoader|A5F2D3E8-7A7E-48E5-BC75-40790BE4A941 +IDXTAlpha|1D4637E0-383C-11D2-952A-00C04FA34F05 +IDXTBindHost|D26BCE55-E9DC-11D1-9066-00C04FD9189D +IDXTBlackHole|C3853C21-3F2E-11D2-9900-0000F803FF7A +IDXTCheckerBoard|AD3C2576-117C-4510-84DD-B668971DCFD1 +IDXTChroma|1D4637E2-383C-11D2-952A-00C04FA34F05 +IDXTClipOrigin|EE1663D8-0988-4C48-9FD6-DB4450885668 +IDXTComposite|9A43A843-0831-11D1-817F-0000F87557DB +IDXTConvolution|7BA7F8AF-E5EA-11D1-81DD-0000F87557DB +IDXTCutter|8AFECB50-E189-11D2-8D5F-00A0C9441E20 +IDXTDropShadow|1D4637E3-383C-11D2-952A-00C04FA34F05 +IDXTFade|16B280C4-EE70-11D1-9066-00C04FD9189D +IDXTFilterBehaviorSite|909B23C2-9018-499F-A86D-4E7DA937E931 +IDXTFilterBehavior|14D7DDDD-ACA2-4E45-9504-3808ABEB4F92 +IDXTFilterCollection|22B07B33-8BFB-49D4-9B90-0938370C9019 +IDXTFilterController|5CF315F2-273D-47B6-B9ED-F75DC3B0150B +IDXTFilter|6187E5A2-A445-4608-8FC0-BE7A6C8DB386 +IDXTFilter|EDA1D7FF-4426-407A-9EA4-DE63A41C09DA +IDXTGlow|1D4637E4-383C-11D2-952A-00C04FA34F05 +IDXTGradientD|623E2881-FC0E-11D1-9A77-0000F8756A10 +IDXTGridSize|D6BBE91E-FF60-11D2-8F6E-00A0C9697274 +IDXTICMFilter|734321ED-1E7B-4E1C-BBFA-89C819800E2F +IDXTLabel|C0C17F0E-AE41-11D1-9A3B-0000F8756A10 +IDXTLight|F9EFBEC1-4302-11D2-952A-00C04FA34F05 +IDXTMask|A1067146-B063-47D7-A54A-2C2309E9889D +IDXTMatrix|AC66A493-0F0C-4C76-825C-9D68BEDE9188 +IDXTMetaBurnFilm|107045D0-06E0-11D2-8D6D-00C04F8EF8E0 +IDXTMetaCenterPeel|AA0D4D0B-06A3-11D2-8F98-00C04FB92EB7 +IDXTMetaColorFade|2A54C907-07AA-11D2-8D6D-00C04F8EF8E0 +IDXTMetaFlowMotion|2A54C90A-07AA-11D2-8D6D-00C04F8EF8E0 +IDXTMetaGriddler2|2A54C912-07AA-11D2-8D6D-00C04F8EF8E0 +IDXTMetaGriddler|2A54C910-07AA-11D2-8D6D-00C04F8EF8E0 +IDXTMetaJaws|2A54C903-07AA-11D2-8D6D-00C04F8EF8E0 +IDXTMetaLightWipe|107045C7-06E0-11D2-8D6D-00C04F8EF8E0 +IDXTMetaLiquid|AA0D4D09-06A3-11D2-8F98-00C04FB92EB7 +IDXTMetaPageTurn|AA0D4D07-06A3-11D2-8F98-00C04FB92EB7 +IDXTMetaPeelPiece|AA0D4D0F-06A3-11D2-8F98-00C04FB92EB7 +IDXTMetaPeelSmall|AA0D4D0D-06A3-11D2-8F98-00C04FB92EB7 +IDXTMetaPeelSplit|AA0D4D11-06A3-11D2-8F98-00C04FB92EB7 +IDXTMetaRadialScaleWipe|107045C9-06E0-11D2-8D6D-00C04F8EF8E0 +IDXTMetaRipple|AA0D4D02-06A3-11D2-8F98-00C04FB92EB7 +IDXTMetaRoll|9C61F46D-0530-11D2-8F98-00C04FB92EB7 +IDXTMetaStream|48654BC0-E51F-11D1-AA1C-00600895FB99 +IDXTMetaThreshold|2A54C914-07AA-11D2-8D6D-00C04F8EF8E0 +IDXTMetaTwister|107045CE-06E0-11D2-8D6D-00C04F8EF8E0 +IDXTMetaVacuum|2A54C90C-07AA-11D2-8D6D-00C04F8EF8E0 +IDXTMetaWater|107045C4-06E0-11D2-8D6D-00C04F8EF8E0 +IDXTMetaWhiteOut|107045CB-06E0-11D2-8D6D-00C04F8EF8E0 +IDXTMetaWormHole|0E6AE021-0C83-11D2-8CD4-00104BC75D9A +IDXTMotionBlur|089057BE-D3F5-4A2C-B10A-A5130184A0F7 +IDXTRandomBars|8A6D2022-4A8F-4EB9-BB25-AA05201F9C84 +IDXTRedirectFilterInit|D1A57094-21F7-4E6C-93E5-F5F77F748293 +IDXTRedirect|02F5140B-626F-4019-9C9E-2DAA1E93E8FC +IDXTRevealTrans|B8095006-A128-464B-8B2D-90580AEE2B05 +IDXTRoll|78F30B81-48AA-11D2-9900-0000F803FF7A +IDXTScaleOutput|B2024B50-EE77-11D1-9066-00C04FD9189D +IDXTScale|B39FD742-E139-11D1-9065-00C04FD9189D +IDXTShadow|1D4637E6-383C-11D2-952A-00C04FA34F05 +IDXTShapes|8241F013-84D3-11D2-97E6-0000F803FF7A +IDXTSpin|3D2807C1-43DE-11D2-9900-0000F803FF7A +IDXTStrips|A83C9B5C-FB11-4AF5-8F65-D03F151D3ED5 +IDXTText3D|50C4B592-7E8D-11D2-9B4E-00A0C9697CD0 +IDXTWave|1D4637E7-383C-11D2-952A-00C04FA34F05 +IDXTWipe2|E1FF8091-442B-4801-88B6-2B47B1611FD2 +IDXTWipe|AF279B2F-86EB-11D1-81BF-0000F87557DB +IDXTaskManager|254DBBC1-F922-11D0-883A-3C8B00C10000 +IDXTransformFactory|6A950B2B-A971-11D1-81C8-0000F87557DB +IDXTransform|30A5FB78-E11F-11D1-9064-00C04FD9189D +IDataChannelIO|43A09182-0472-436E-9883-2D95C347C5F1 +IDataFormats|91FE14C4-7370-11D2-97D8-00104B880587 +IDataFormat|91FE14C2-7370-11D2-97D8-00104B880587 +IDataMover|54B6C009-C05A-4F16-AB55-716A1A1BE447 +IDataServ|61F0A4EC-4B6A-4783-873E-09A804F5CFA9 +IDataStore2|6BC096C2-0CE6-11D1-BAAE-00C04FC2E20D +IDataStoreContainer|6BC096C1-0CE6-11D1-BAAE-00C04FC2E20D +IDataStoreObject|6BC096C0-0CE6-11D1-BAAE-00C04FC2E20D +IDataStoreProperty|6BC096C9-0CE6-11D1-BAAE-00C04FC2E20D +IDatabaseExtension|B58A0F80-0702-11D2-9A63-00C04FA309D4 +IDatabaseNotify|7CADFB4C-AC65-11D1-9A16-00C04FA309D4 +IDatabaseProgress|7CADFB4B-AC65-11D1-9A16-00C04FA309D4 +IDatabaseQuery|E6CEC131-7F4B-11D2-9962-00C04FA309D4 +IDatabaseSession|4A160440-676D-11D2-994E-00C04FA309D4 +IDatabaseStream|82EAD219-A6EC-11D1-9A11-00C04FA309D4 +IDatabase|7157F0AE-967B-11D1-9A08-00C04FA309D4 +IDavCallback|FC0D2910-C20D-11D2-B2F5-00105A9974A0 +IDavStorage|97B79B7E-6701-43CB-8515-035301124B4F +IDavTransport|93F23B8C-C20C-11D2-B2F5-00105A9974A0 +IDeadGraph|F8C603D7-4596-4607-AC47-A054B808A5DF +IDebugApplicationEx|51973C02-CB0C-11D0-B5C9-00A0244A0E7A +IDebugWindowProxy|3050F592-98B5-11CF-BB82-00AA00BDCE0B +IDebugWindow|3050F593-98B5-11CF-BB82-00AA00BDCE0B +IDefCategoryProvider|509767BF-AC06-49F8-9E76-8BBC17F0EE93 +IDefViewFrame3|985F64F0-D410-4E02-BE22-DA07F2B5C5E1 +IDefViewSafety|9A93B3FB-4E75-4C74-871A-2CDA667F39A5 +IDelayFilterInternal|EFEC4060-F2B3-11D2-8873-00902741FC26 +IDelayFilter|0BC88F02-C6C3-11D2-8E0B-00C04F799BB9 +IDelayStreamerInternal|7E699840-F1DB-11D2-8873-00902741FC26 +IDelayStreamer|2BE53B32-C6C3-11D2-8E0B-00C04F799BB9 +IDependentAssemblyInfo|C9629878-461A-451B-A032-EACA1CB5383A +IDeskBandEx|5DD6B79A-3AB7-49C0-AB82-6B2DA7D78D75 +IDetection|8E2EF6DC-0AB8-4FE0-9049-3BEA4506BF8D +IDevInfoSet|7E4CFB67-81CA-4D22-B22F-DE408BBD8359 +IDevMgrSnapin|74246BF8-4C96-11D0-ABEF-0020AF6B0B7A +IDeviceAction|A9C5109A-978A-4391-AC39-601FBE847652 +IDeviceConsole|258487AC-C1B8-432A-9A1B-C0A78FE22F6E +IDeviceControl|A9C5109A-978A-4391-AC39-601FBE847653 +IDeviceIcon|95B7DCA4-3C9E-4005-A67F-5853A66104C9 +IDeviceInternal|0068CD4D-A0C0-4485-A3BD-FF66E7AFDC54 +IDeviceProperty|A9C5109A-978A-4391-AC39-601FBE847651 +IDevicesEnum|957D1827-A650-4614-B319-8B665648EF25 +IDevices|1F69AC3E-7742-402A-AE22-C4708F7CC3A9 +IDevice|470DD1C1-A36C-4999-8804-61AAA97C7C20 +IDexterSequencer|0C4C0120-53EF-11D2-9EE6-006008039E37 +IDfrgCtl|202D3AEE-2F0E-11D1-A1F6-0080C88593A5 +IDfrgEvents|57BC50BF-780B-11D1-8C44-0060083E866C +IDfsJunctionPoint|A741D3FF-31BE-11D1-9A4A-0080ADAA5C4B +IDfsReplica|A741D3FD-31BE-11D1-9A4A-0080ADAA5C4B +IDfsRoot|A741D3FA-31BE-11D1-9A4A-0080ADAA5C4B +IDfsShell|ECCDF542-45CC-11CE-B9BF-0080C87CDBA6 +IDglogsCom|0C66D9B8-26C0-4110-BEA4-5AFA4848585C +IDialErr|462F7757-8848-11D1-ADD8-0000F87734F0 +IDictionaryEx|E5C42D38-CFC7-4AED-91D1-B4DC85F9D257 +IDictionary|50DB8971-68E7-4914-9903-F9B473936A6B +IDirect3D8|1DD9E8DA-1C77-4D40-B0CF-98FEFDFF9512 +IDirect3DBaseTexture8|B4211CFA-51B9-4A9F-AB78-DB99B2BB678E +IDirect3DCubeTexture8|3EE5B968-2ACA-4C34-8BB5-7E0C3D19B750 +IDirect3DDevice8|7385E5DF-8FE8-41D5-86B6-D7B48547B6CF +IDirect3DIndexBuffer8|0E689C9A-053D-44A0-9D92-DB0E3D750F86 +IDirect3DResource8|1B36BB7B-09B7-410A-B445-7D1430D7B33F +IDirect3DSurface8|B96EEBCA-B326-4EA5-882F-2FF5BAE021DD +IDirect3DSwapChain8|928C088B-76B9-4C6B-A536-A590853876CD +IDirect3DTexture8|E4CDD575-2866-4F01-B12E-7EECE1EC9358 +IDirect3DVertexBuffer8|8AEEEAC7-05F9-44D4-B591-000B0DF1CB95 +IDirect3DVolume8|BD7349F5-14F1-42E4-9C79-972380DB40C0 +IDirect3DVolumeTexture8|4B8AAAFA-140F-42BA-9131-597EAFAA2EAD +IDirectShowStream|7DB01C96-C0C3-11D0-8FF1-00C04FD9189D +IDirectX7|FAFA3599-8B72-11D2-90B2-00C04FC2C602 +IDirectory|5C036EA0-B556-11CE-B33A-00AA00680937 +IDiscStash|520CCA64-51A5-11D3-9144-00104BA11C5E +IDiskQuotaControlEvents|7988B579-EC89-11CF-9C00-00AA00A14F56 +IDispAdditive|57FF5481-DCCA-11D0-B211-00A0C9191768 +IDispDistortion|57FF5485-DCCA-11D0-B211-00A0C9191768 +IDispatch_In_Memory|83FB5D85-2339-11D2-B89D-00C04FB9618A +IDisplEx|7D197470-607C-11D1-9FED-00600832DB4A +IDisplaySettings|610D76DE-7861-4715-9D08-B6E297C3985B +IDisplay|954DC5AB-4F3B-493B-AF10-30FF50A38143 +IDnsResolverRecordSink|D95A4D0C-8E06-11D2-94F6-00C04F79F1D6 +IDnsResolverRecord|E5B89C52-8E0B-11D2-94F6-00C04F79F1D6 +IDnsStatus|4E60BFAD-A179-47AC-8961-C7C1F0785AC1 +IDoEmailResponse|412733A9-1341-4832-95A3-3CEE7C626966 +IDoTask|0230C9F8-EE7F-4307-98DB-726EBCAE55D6 +IDocConfig|F1E752C2-FD72-11D0-AEF6-00C04FB6DD2C +IDocHostUIHandlerDispatch|425B5AF0-65F1-11D1-9611-0000F81E0D0D +IDocfileAsyncConnectionPoint|4A8DF970-8D9A-11CF-8827-00AA00B569F5 +IDomainMap|ACE1AC86-E14F-4F7B-B89A-805A69959680 +IDomain|3AA8301C-2197-4CBF-ABD0-6BF17F84F70A +IDownloadMgr|0A6F16F8-ACD7-11D3-B4ED-00C04F8ECB26 +IDownloadNotify|CAEB5D28-AE4C-11D1-BA40-00C04FB92D79 +IDriveFolderExt|98467961-4F27-4A1F-9629-22B06D0B5CCB +IDriverPackagesEnum|C150F383-8B09-4474-8A0B-5A5A2163031F +IDriverPackages|EFD9A266-AA93-4B6B-BEF0-3A8426ED86BD +IDriverPackage|DBF0C76E-CF22-453A-AFC3-598D658C6266 +IDriversEnum|16D32DAD-FBDA-44A4-A2C2-B196B4D9FB59 +IDrivers|5FD0C0B2-0C30-43B2-A95B-2D7894ACD1C1 +IDriver|08B6A002-8A41-4282-AE6C-7BE38158640C +IDrvSearchSet|3BAF3E4E-047A-4C95-9446-45E8ABAFEA47 +IDsctl|0998BB01-DFFD-11CF-927F-00AA00688A38 +IDummy|0D7CA54A-D252-4FCB-9104-F6DDD310B3F9 +IDxtAlphaSetter|4EE9EAD9-DA4D-43D0-9383-06B90C08B12B +IDxtBlnd1|68F3E0A0-BFBB-11D2-8D34-00A0C9441E20 +IDxtCompositor|BB44391E-6ABD-422F-9E2E-385C9DFF51FC +IDxtGray|DC210C62-1338-11D3-920E-00C0DF10D434 +IDxtJpeg|DE75D011-7A65-11D2-8CEA-00A0C9441E20 +IDxtKey|3255DE56-38FB-4901-B980-94B438010D7B +IDxtKey|C5B19590-145E-11D3-9F04-006008039E37 +IDxtMix|02673F10-A68F-11D2-8D19-00A0C9441E20 +IDxtPip|423F19B1-C541-11D2-8D3B-00A0C9441E20 +IDynamicStorage|C7BFC3D0-8939-4D9D-8973-654099329956 +IEKUs|47C87CEC-8C4B-4E3C-8D22-34280274EFD1 +IEKU|976B7E6D-1002-4051-BFD4-824A74BD74E2 +IEditDebugServices|3050F60B-98B5-11CF-BB82-00AA00BDCE0B +IElementAdorner|3050F607-98B5-11CF-BB82-00AA00BDCE0B +IElementBehaviorSiteImpl|14887E6E-DE4B-11D2-8FF9-00C04F8EC9A2 +IElementBehaviorUI|3050F4BF-98B5-11CF-BB82-00AA00BDCE0B +IEmDebugSession|74FA475F-492D-406E-B267-BBCB28AF262A +IEmFile|3939636C-5C12-44F6-A7F8-8FE5ECF46672 +IEmManager|1B60057D-B15A-4A30-A1FC-905B6AF24FB4 +IEncryptedData|C4778A66-972F-42E4-87C5-5CC16F7931CA +IEntity|16359321-5182-4CF8-8D98-E90880722A23 +IEnumAlbums|FC8AD551-5B8E-424E-92C0-EB6D00449E65 +IEnumAssociationElements|A6B0FB57-7523-4439-9425-EBE99823B828 +IEnumAutoplayHandler|66057ABA-FFDB-4077-998E-7F131C3F8157 +IEnumCERTDBCOLUMN|90A27030-8BD5-11D3-B32E-00C04F79DC72 +IEnumCERTDBNAME|91DBB1A0-8BD5-11D3-B32E-00C04F79DC72 +IEnumCERTDBRESULTROW|915FEB70-8BD5-11D3-B32E-00C04F79DC72 +IEnumCategories|28172230-D8E9-11D2-A4FF-00C04F79A597 +IEnumClients|FE9E48A3-A014-11D1-855C-00A0C944138C +IEnumClusCfgIPAddresses|BD5F35BA-0BC0-455F-926D-C3D356419486 +IEnumClusCfgManagedResources|7DBE11EB-A5DF-4534-ABF6-8BAC7B53FC95 +IEnumClusCfgNetworks|CF3FAED8-1322-4BCB-9923-B5B745A69E36 +IEnumClusCfgPartitions|4440BB6A-B0AC-479D-B534-7265A31D6C55 +IEnumCookies|5E3E482E-3C22-482C-B664-693051AD0A5D +IEnumCookies|DE40437E-9671-11D0-A799-00C04FD8D565 +IEnumExch|34F40F17-3C92-4695-8445-828499A208E4 +IEnumHNetApplicationProtocols|85D18B7B-3032-11D4-9348-00C04F8EEB71 +IEnumHNetBridgedConnections|85D18B7D-3032-11D4-9348-00C04F8EEB71 +IEnumHNetBridges|85D18B77-3032-11D4-9348-00C04F8EEB71 +IEnumHNetFirewalledConnections|85D18B78-3032-11D4-9348-00C04F8EEB71 +IEnumHNetIcsPrivateConnections|85D18B7A-3032-11D4-9348-00C04F8EEB71 +IEnumHNetIcsPublicConnections|85D18B79-3032-11D4-9348-00C04F8EEB71 +IEnumHNetPortMappingBindings|85D18B81-3032-11D4-9348-00C04F8EEB71 +IEnumHNetPortMappingProtocols|85D18B7C-3032-11D4-9348-00C04F8EEB71 +IEnumIDList|000214F2-0000-0000-0000-C00000000046 +IEnumIlsNames|440CC990-20E6-11D0-8796-444553540000 +IEnumIlsProtocols|440CC98E-20E6-11D0-8796-444553540000 +IEnumIlsUsers|440CC98F-20E6-11D0-8796-444553540000 +IEnumInfoBlock|66A2DB01-D706-11D0-A37B-00C04FC9DA04 +IEnumInstalledApps|1BC752E1-9046-11D1-B8B3-006008059382 +IEnumInterfaceCB|66A2DB11-D706-11D0-A37B-00C04FC9DA04 +IEnumInterfaceInfo|66A2DB09-D706-11D0-A37B-00C04FC9DA04 +IEnumLinkQueues|BA7AF303-7373-11D2-94E4-00C04FA379F1 +IEnumMedia|CA8397BE-2FA4-11D1-9774-00C04FD91AC0 +IEnumMsmConfigurableItem|832C6969-4826-4C24-A397-B7002D8196E6 +IEnumMsmDependency|0ADDA82C-2C26-11D2-AD65-00A0C9AF11A6 +IEnumMsmError|0ADDA829-2C26-11D2-AD65-00A0C9AF11A6 +IEnumMsmString|0ADDA826-2C26-11D2-AD65-00A0C9AF11A6 +IEnumNmCall|068B0744-718C-11D0-8B1A-00A0C91BC90E +IEnumNmChannel|068B0743-718C-11D0-8B1A-00A0C91BC90E +IEnumNmConference|068B0741-718C-11D0-8B1A-00A0C91BC90E +IEnumNmMember|068B0742-718C-11D0-8B1A-00A0C91BC90E +IEnumNmMember|F246195B-FF07-4016-BB36-E0DBD4CF62FE +IEnumNmSharableApp|068B0745-718C-11D0-8B1A-00A0C91BC90E +IEnumNodes|C477E363-AF0A-4203-A604-45CD607DD710 +IEnumNotificationSinkItem|C733E4AA-576E-11D0-B28C-00C04FD7CD22 +IEnumNotification|C733E4A8-576E-11D0-B28C-00C04FD7CD22 +IEnumPStoreItems|5A6F1EC1-2DB1-11D0-8C39-00C04FD9126B +IEnumPStoreProviders|5A6F1EBF-2DB1-11D0-8C39-00C04FD9126B +IEnumPStoreTypes|789C1CBF-31EE-11D0-8C39-00C04FD9126B +IEnumPackage|00000193-0000-0000-C000-000000000046 +IEnumPackage|79EACBE4-BAF9-11CE-8C82-00AA004BA90B +IEnumParticipant|0A91B56C-5A35-11D2-95A0-00A0244D2298 +IEnumPropertyMap|C733E4A1-576E-11D0-B28C-00C04FD7CD22 +IEnumRtrMgrCB|66A2DB0F-D706-11D0-A37B-00C04FC9DA04 +IEnumRtrMgrInfo|66A2DB05-D706-11D0-A37B-00C04FC9DA04 +IEnumRtrMgrInterfaceCB|66A2DB12-D706-11D0-A37B-00C04FC9DA04 +IEnumRtrMgrInterfaceInfo|66A2DB0B-D706-11D0-A37B-00C04FC9DA04 +IEnumRtrMgrProtocolCB|66A2DB10-D706-11D0-A37B-00C04FC9DA04 +IEnumRtrMgrProtocolInfo|66A2DB07-D706-11D0-A37B-00C04FC9DA04 +IEnumRtrMgrProtocolInterfaceCB|66A2DB13-D706-11D0-A37B-00C04FC9DA04 +IEnumRtrMgrProtocolInterfaceInfo|66A2DB0D-D706-11D0-A37B-00C04FC9DA04 +IEnumSCMProcessInfo|8BBBD026-DE4D-46B7-8A90-72C66EB64AD6 +IEnumSENTITEM|E0F4088D-CD08-11D2-B503-00C04F797396 +IEnumSTATDIR|74C76B90-B556-11CE-B33A-00AA00680937 +IEnumSTATPROPBAG|20021801-5DE6-11D1-8E38-00C04FB9386D +IEnumScheduleGroup|C733E4A9-576E-11D0-B28C-00C04FD7CD22 +IEnumShellReminder|6C6D9735-2D86-40E1-B348-08706B9908C0 +IEnumSiteServer|589AF613-6AAE-11D2-B742-00C04FA3C554 +IEnumSpSentence|299A9157-CD08-11D2-B503-00C04F797396 +IEnumStatPropStgDispatch|340BDB90-9F44-11D2-B08A-00C04FA36145 +IEnumSyncItems|F0E1589A-A700-11D1-9831-00C04FD910DD +IEnumSyncSchedules|F0E15898-A700-11D1-9831-00C04FD910DD +IEnumTfCollection|1C760B20-ED66-4DBD-9FF1-68FC21C02922 +IEnumTfRenderingMarkup|8C03D21B-95A7-4BA0-AE1B-7FCE12A72930 +IEnumTime|9055322E-2FA8-11D1-9774-00C04FD91AC0 +IEnumUICommand|869447DA-9F84-4E2A-B92D-00642DC8A911 +IEnumUserIdentity|A9AE6C8F-1D1B-11D2-B21A-00C04FA357FA +IEnumVSAQLinks|BA7AF300-7373-11D2-94E4-00C04FA379F1 +IEnumWiaDevCapsDispatch|05B40A3C-E6BC-11D2-B5C2-00C04F68C956 +IEnumWiaDevInfoDispatch|8E25D848-8949-11D2-B081-00C04FA36145 +IEnumWiaItemDispatch|FF0BB94D-9E68-11D2-B08A-00C04FA36145 +IEnumerateFolders|8551C145-0C39-11D2-9A6A-00C04FA309D4 +IEnvelopedData|F6CB6A20-CC18-4424-AE57-6F2AA3DC2059 +IEventBindingManagerCopier|64BAD540-F88D-11D0-AA14-00AA006BC80B +IEventBindingManager|0B4CDBC0-A64F-11D0-A9EA-00AA00685C74 +IEventBindings|1080B910-A636-11D0-A9EA-00AA00685C74 +IEventBinding|8E398CE0-A64E-11D0-A9EA-00AA00685C74 +IEventComCat|65A70EC0-CD87-11D0-A9F8-00AA00685C74 +IEventCreateOptions|C0287BFE-EF7F-11D1-9FFF-00C04FA37348 +IEventDatabaseManager|ADC25B30-CBD8-11D0-A9F8-00AA00685C74 +IEventDatabasePlugin|4915FB10-AF97-11D0-A9EB-00AA00685C74 +IEventDeliveryOptions|0688A660-A3FF-11D0-A9E9-00AA00685C74 +IEventDispatcherChain|58A90754-FB15-11D1-A00C-00C04FA37348 +IEventDispatcher|C980F550-ED9E-11D0-AA10-00AA006BC80B +IEventGenerator|C7AEBC6E-1916-11D3-9027-00C04F8EC9A1 +IEventIsCacheable|22E0F830-1E81-11D1-AA29-00AA006BC80B +IEventLock|1B7058F0-AF88-11D0-A9EB-00AA00685C74 +IEventManager|5F6012B0-A651-11D0-A9EA-00AA00685C74 +IEventNotifyBindingChangeDisp|DC3D83B0-E99F-11D0-AA10-00AA006BC80B +IEventNotifyBindingChange|08F4F2A0-DC5B-11D0-AA0F-00AA006BC80B +IEventPersistBinding|E9311660-1A98-11D1-AA26-00AA006BC80B +IEventPropertyBag|AABB23E0-A705-11D0-A9EA-00AA00685C74 +IEventRegistrar|17CC3D67-B56C-4F8C-82C8-F46046F4C5D7 +IEventRouter|1A00B970-EDA0-11D0-AA10-00AA006BC80B +IEventRuleEngine|DA816090-F343-11D0-AA14-00AA006BC80B +IEventSinkNotifyDisp|33A79660-F347-11D0-AA14-00AA006BC80B +IEventSinkNotify|BDF065B0-F346-11D0-AA14-00AA006BC80B +IEventSource2|FC8B4FFC-E26F-4955-9AC8-66E923852F5A +IEventSourceStatusSink|3BFE05F9-2580-4EF3-BD0E-BA649B3F8429 +IEventSourceTypes|CAF30FD0-A651-11D0-A9EA-00AA00685C74 +IEventSourceType|063A62E0-A652-11D0-A9EA-00AA00685C74 +IEventSources|73E8C930-A652-11D0-A9EA-00AA00685C74 +IEventSource|3B01AB49-A81C-472D-84BB-67C201A49A4D +IEventSource|B1DCB040-A652-11D0-A9EA-00AA00685C74 +IEventTypeSinks|A1063F50-A654-11D0-A9EA-00AA00685C74 +IEventTypes|CAB29EF0-A64F-11D0-A9EA-00AA00685C74 +IEventType|4A993B80-A654-11D0-A9EA-00AA00685C74 +IEventUtil|C61670E0-CD6E-11D0-A9F8-00AA00685C74 +IEvents|B70B0436-726F-4742-B08E-1AEE6D6C6AA9 +IEvent|5FF33202-DD46-4C30-809D-BD868D6A6D29 +IExceptionNotification|000001DB-0000-0000-C000-000000000046 +IExclusiveSharedLock|C4853123-59F4-11D1-92B3-0060979594F7 +IExplode|141DBAF0-55FB-11D1-B83E-00A0C933BE86 +IExplorerToolbar|8455F0C1-158F-11D0-89AE-00A0C90A90AC +IExtendAccountMigration|9A9E1630-29B2-11D3-8C8D-0090270D48D1 +IExtendControlbarRemote|F00EB152-8BB4-11D2-97DD-00104B880587 +IExtendObjectManager|CA7BB0B9-700C-4DC5-991E-75F9E65EE975 +IExtendProfileMigration|C02A26BD-5E70-46DA-80A5-221DF57C7E15 +IExtendPropertySheetRemote|89E2A982-E9F9-11D2-97F2-00104B880587 +IExtendServerSettings|0A0E4056-AAA9-4A67-B157-98305418CCF0 +IExtendTSWizard|8F5455E6-4429-11D2-988E-00A0C925F917 +IExtendedKeyUsage|7289D408-987D-45D1-8DEE-CF9E91C2E90E +IExtendedSnapIns|BDA4B9D2-0872-11D2-9791-50C320524153 +IExtendedSnapIn|FFF9A8E7-06CB-11D2-9791-50C320524153 +IExtensionDefs|FFF9A8E5-06CB-11D2-9791-50C320524153 +IExtensionSnapIn|22812B11-F637-11D1-977E-CE9020524153 +IExtensions|861481FA-D867-11D1-B450-C43058000000 +IExtension|861481FD-D867-11D1-B450-C43058000000 +IExternalUI|8E8922A2-5BA0-4DC3-9F35-A952FE4DD299 +IExtractIconA|000214EB-0000-0000-0000-C00000000046 +IExtractIconW|000214FA-0000-0000-0000-C00000000046 +IFadeTask|FADB55B4-D382-4FC4-81D7-ABB325C7F12A +IFaxControl|32B56515-D48B-4DD9-87AC-9216F6BEAA6F +IFaxQueue|70615918-C8B2-11D0-B225-00C04FB6C2F5 +IFaxSecurityInformation|675C9E93-866E-4F2F-9878-2B0CF7052EA0 +IFaxSecurityInformation|6D7C5510-6AC5-11D1-9092-00A0C90AB504 +IFaxSnapinAbout|81E9947C-4755-11D1-9077-00A0C90AB504 +IFaxSnapin|572BA815-2FA7-11D1-9067-00A0C90AB504 +IFileOpen|C9F9C23C-1A16-4A31-B53B-A81B334DFBE0 +IFileSave|2AC10A96-17A1-4B08-8EF0-5988F3979F18 +IFileSystemDescriptor|1079ACFB-29BD-11D3-8E0D-00C04F6837D5 +IFileSystemStorage|E820910B-1910-404D-AFAF-5D7298B9B28D +IFile|79EAC9CA-BAF9-11CE-8C82-00AA004BA90B +IFillInfo|DE2EACD0-9C9D-11CF-882A-00AA00B569F5 +IFindCompressorCB|F03FA8DE-879A-4D59-9B2C-26BB1CF83461 +IFolderItemsView|0BE044CA-F8A3-49B8-BDB2-5F5319E9DE89 +IFontCacheNotify|B0D17FC5-7BC4-11D1-BDFA-00C04FA31009 +IFontCache|B0D17FC2-7BC4-11D1-BDFA-00C04FA31009 +IFrameSkipResultCallback|7536960D-1977-4807-98EA-485F6C842A54 +IFsaFilterClient|560E5A02-DEDE-11D1-A9F5-00A0248903EA +IFsaFilterPriv|3DEFB163-BAEC-11D2-9EE9-00104B226B3E +IFsaFilterRecallPriv|23A05997-DA21-4998-A354-8797303FB91E +IFsaFilterRecall|5E176F27-6F53-4C84-B935-9259297669B0 +IFsaFilter|5FFF1640-D487-11D1-A9F5-00A0248903EA +IFsaPostIt|B5A1ED6A-CED4-4D16-9A76-8CD4473A2CE9 +IFsaPremigratedDb|E4D900C9-DFD0-4F8D-8F44-1555C2E3E15F +IFsaPremigratedRec|5E2526D3-400D-11D1-A3D5-00609704F787 +IFsaRecallNotifyClient|D68BD5B1-D6AA-11D0-9EDA-00A02488FCDE +IFsaRecallNotifyServer|D68BD5B2-D6AA-11D0-9EDA-00A02488FCDE +IFsaRecoveryRec|74D85681-44D8-11D1-A3D7-00609704F787 +IFsaResourcePriv|27F72BA5-B1C5-4708-8700-D950B9EAE27B +IFsaResource|172F71CD-A452-4005-8E3E-7BCEAE124D53 +IFsaScanItemPriv|03150C1E-9580-4A1F-91B3-BE2367E4F400 +IFsaScanItem|087E7ED0-727A-11D2-9CD3-00A0C9118102 +IFsaServer|C49D553D-CA2B-4482-A404-CD4B6B44EAE4 +IFsaTruncator|9CABC042-8AA4-11D0-81E6-00A0C91180F2 +IFsaUnmanageDb|3F676047-90B6-48D6-B479-28E57AD4B746 +IFsaUnmanageRec|90D54B53-EDB6-401D-81C5-47D7B4842EC0 +IFtpWebView|21DCE770-ABD0-11D2-A32B-006097DF5BD4 +IFullScCtl|E0944507-942B-4FA7-B566-4A8094A88604 +IFusionBindLog|67E9F87D-8B8A-4A90-9D3E-85ED5B2DCC83 +IFusionLoadContext|022AB2BA-7367-49FC-A1C5-0E7CC037CAAB +IGFXPropPages|6F39F0CD-DC09-42A4-9E29-FB988E00EF67 +IGatherData|65318F4A-B63C-4E21-ADDC-BDCFB969E181 +IGdiSurface|3050F2F0-98B5-11CF-BB82-00AA00BDCE0B +IGenVideo|6F1DA080-6556-11D2-9EEB-006008039E37 +IGeneralNotification|239A3C5B-8D41-11D1-B675-00C04FA3C554 +IGetCatalogObject|000001FE-0000-0000-C000-000000000046 +IGetContextId|000001DD-0000-0000-C000-000000000046 +IGetEnumClients|FE9E48A2-A014-11D1-855C-00A0C944138C +IGlobalMTScript|854C316B-C854-4A77-B189-606859E4391B +IGoober|FFFFFFFF-0000-0000-0000-000000000000 +IGraphWalker|14887E6E-DE4B-11D2-8FF9-00C04F8EC9A1 +IGraphicsWindow|8B43CF5D-56ED-11D1-8857-0060975EC077 +IGrfCache|AE9472BE-B0C3-11D2-8D24-00A0C9441E20 +IGroupMigration|A29D4925-B16A-4E89-9328-BF50999C8EDD +IGuideDataProviders|CA9DE996-637C-47BF-BC10-CF956BE298EC +IGuideDataProvider|4B16049B-E548-4868-B303-D501340E2CB1 +IGuideStoreInternal|C69D55D7-4C28-4B5F-8249-0498FD908AF7 +IGuideStore|E4A9F7DA-F38F-43D3-AB3B-7E9F9FB7A7C7 +IH26XEncodeOptions|65698D40-282D-11D0-8800-444553540000 +IH26XEncoderControl|F9B78AA1-EA12-11CF-9FEC-00AA00A59F69 +IH26XRTPControl|1FC3F2C0-2BFD-11D0-8800-444553540000 +IH26XSnapshot|3CB194A0-10AA-11D0-8800-444553540000 +IH26XVideoEffects|21555140-9C2B-11CF-90FA-00AA00A729EA +IH323LineEx|44CF6A9D-CB40-4BBC-B2D3-B6AA93322C71 +IHHCollectionWrapper|06A03424-C9EB-11D2-8CAA-0080C739E3E0 +IHHCtrl|ADB880A1-D8FF-11CF-9377-00AA003B7A11 +IHJDict|22BA0232-F708-485A-917B-FE70B4222D89 +IHNetApplicationProtocol|85D18B7F-3032-11D4-9348-00C04F8EEB71 +IHNetBridgeSettings|85D18B6D-3032-11D4-9348-00C04F8EEB71 +IHNetBridgedConnection|85D18B76-3032-11D4-9348-00C04F8EEB71 +IHNetBridge|85D18B75-3032-11D4-9348-00C04F8EEB71 +IHNetCfgMgr|85D18B6C-3032-11D4-9348-00C04F8EEB71 +IHNetConnection|85D18B71-3032-11D4-9348-00C04F8EEB71 +IHNetFirewallSettings|85D18B6E-3032-11D4-9348-00C04F8EEB71 +IHNetFirewalledConnection|85D18B72-3032-11D4-9348-00C04F8EEB71 +IHNetIcsPrivateConnection|85D18B74-3032-11D4-9348-00C04F8EEB71 +IHNetIcsPublicConnection|85D18B73-3032-11D4-9348-00C04F8EEB71 +IHNetIcsSettings|85D18B6F-3032-11D4-9348-00C04F8EEB71 +IHNetPortMappingBinding|85D18B80-3032-11D4-9348-00C04F8EEB71 +IHNetPortMappingProtocol|85D18B7E-3032-11D4-9348-00C04F8EEB71 +IHNetPrivate|3F1E85F9-A5B4-487E-B0A0-B137973BE622 +IHNetProtocolSettings|85D18B70-3032-11D4-9348-00C04F8EEB71 +IHTMLDXTransform|30E2AB7D-4FDD-4159-B7EA-DC722BF4ADE5 +IHTMLEditingServices|3050F7FB-98B5-11CF-BB82-00AA00BDCE0B +IHTMLEditor|3050F7FA-98B5-11CF-BB82-00AA00BDCE0B +IHTMLFilterPaintSite|3050F6D3-98B5-11CF-BB82-00AA00BDCE0B +IHTMLFilterPainter|3050F6DE-98B5-11CF-BB82-00AA00BDCE0B +IHTMLOptionElement2|3050F697-98B5-11CF-BB82-00AA00BDCE0B +IHTMLPrivateWindow2|3050F7E5-98B5-11CF-BB82-00AA00BDCE0B +IHTMLPrivateWindow3|3050F840-98B5-11CF-BB82-00AA00BDCE0B +IHTMLPrivateWindow|3050F6DC-98B5-11CF-BB82-00AA00BDCE0B +IHTMLSelectElement3|3050F687-98B5-11CF-BB82-00AA00BDCE0B +IHTTPMailCallback|19F6481C-E5F0-11D1-A86E-0000F8084F96 +IHTTPMailTransport2|82758005-D38A-11D3-8E81-00C04F79E13B +IHTTPMailTransport|B8BDE03C-E548-11D1-A86E-0000F8084F96 +IHWDeviceCustomProperties|77D5D69C-D6CE-4026-B625-26964EEC733F +IHWDevice|99BC7510-0A96-43FA-8BB1-C928A0302EFB +IHang|D35B7AE9-BE5D-4733-A591-7521B737E5D3 +IHardwareDeviceCallback|99B732C2-9B7B-4145-83A4-C45DF791FD99 +IHardwareDevicesEnum|553A4A55-681C-440E-B109-597B9219CFB2 +IHardwareDevicesMountPointsEnum|EE93D145-9B4E-480C-8385-1E8119A6F7B2 +IHardwareDevicesVolumesEnum|3342BDE1-50AF-4C5D-9A19-DABD01848DAE +IHardwareDevices|CC271F08-E1DD-49BF-87CC-CD6DCF3F3D9F +IHardware|08F74379-2BCC-4538-BAA0-AD9D4D14DA2D +IHashTable|64577981-86D7-11D1-BDFC-00C04FA31009 +IHeaders|BA3A1BB8-B785-4486-8D68-BE7EE8CB14DC +IHeightField|0492170A-B159-11D1-9207-0000F8758E66 +IHelloWorld|FEE1509A-BC8F-11D2-9D5E-0000F81EF32E +IHello|6E155860-2701-101B-B2E1-00000B65C7EF +IHelpHostPanes|AF72E211-FA10-4BB5-A348-269D7615A520 +IHelpHostPane|AF72E212-FA10-4BB5-A348-269D7615A520 +IHelpHostWindow|AF72E213-FA10-4BB5-A348-269D7615A520 +IHelpHost|AF72E210-FA10-4BB5-A348-269D7615A520 +IHistoryAssembly|E6096A07-E188-4A49-8D50-2A0172A0D205 +IHistoryReader|1D23DF4D-A1E2-4B8B-93D6-6EA3DC285A54 +IHomeNetworkWizard|543C4FA4-52DD-421A-947A-4D7F92B8860A +IHotWizardHost|00CE6C10-88B2-11D2-8C1F-00C04FA31009 +IHotWizard|2A17F622-88C6-11D2-8C20-00C04FA31009 +IHotfixOCX|692E94C7-A5AC-401B-A471-BCD101B456F4 +IHsmActionOnResourcePost|0AD613D1-18BE-11D1-9939-0060976A546D +IHsmActionOnResourcePreScan|D7619DB3-265E-4796-A98C-F6F28C2A618C +IHsmActionOnResourcePre|FD8D709C-47DD-4D68-BBD5-817EDD934E4B +IHsmActionOnResource|D9E04213-14D7-11D1-9938-0060976A546D +IHsmAction|AD402351-00FC-11D0-819C-00A0C91180F2 +IHsmConnPoint|ADCAF721-1D59-4134-B0D9-854C314C058F +IHsmCriteria|AD40235B-00FC-11D0-819C-00A0C91180F2 +IHsmDirectedAction|C7A01572-187A-11D0-81B0-00A0C91180F2 +IHsmEvent|621EFF31-B2E2-11D1-B9A6-00A0C9190447 +IHsmFsaTskMgr|14F73FCB-517D-4503-B15D-2D40B3E9CD21 +IHsmJobContext|AD402360-00FC-11D0-819C-00A0C91180F2 +IHsmJobDef|2FA5166A-D28B-49D4-B5F8-B12B3201C1C4 +IHsmJobPriv|31B6B5CB-0DB0-4286-84EA-8A0F3D25AE00 +IHsmJobSinkEverySession|4250BAA0-811D-11D0-81E4-00A0C91180F2 +IHsmJobWorkItemPriv|29312E77-7056-4E2F-83CC-FB1489FAD7F6 +IHsmJobWorkItem|B8E1CD20-81D3-11D0-81E4-00A0C91180F2 +IHsmJob|2A87C7E2-DB24-11D2-AFA2-00104B9A3758 +IHsmManagedResourceCollection|AAA2ABF1-E5CF-11D1-9974-0060976A546D +IHsmManagedResource|BA365110-6D66-11D0-9E2E-00A0C916F120 +IHsmPhasePriv|35035911-0D1C-11D2-9B0C-00104B9A2869 +IHsmPhase|35035914-0D1C-11D2-9B0C-00104B9A2869 +IHsmPolicy|AD40234C-00FC-11D0-819C-00A0C91180F2 +IHsmRecallItem|B287C709-F4AD-467C-811D-1D56021D68AD +IHsmRecallQueue|E3A35E06-4263-4505-B77B-196B22ACC94B +IHsmRelativeCriteria|2B382EA1-16EA-11D0-81AE-00A0C91180F2 +IHsmRelocateAction|C7A01571-187A-11D0-81B0-00A0C91180F2 +IHsmRuleStack|7B22FF21-1AD6-11D0-81B1-00A0C91180F2 +IHsmRule|AD402356-00FC-11D0-819C-00A0C91180F2 +IHsmScanner|BEA60F83-7EBA-11D0-81E4-00A0C91180F2 +IHsmServer|725FA402-1C39-4487-BB0D-0FBA040DE70A +IHsmSessionSinkEveryEvent|F1AAA4E0-8385-11D0-81E4-00A0C91180F2 +IHsmSessionSinkEveryItem|BEA60F85-7EBA-11D0-81E4-00A0C91180F2 +IHsmSessionSinkEveryMediaState|D5450542-A6C2-11D0-81E7-00A0C91180F2 +IHsmSessionSinkEveryPriority|D5450543-A6C2-11D0-81E7-00A0C91180F2 +IHsmSessionSinkEveryState|BEA60F87-7EBA-11D0-81E4-00A0C91180F2 +IHsmSessionSinkSomeItems|BEA60F88-7EBA-11D0-81E4-00A0C91180F2 +IHsmSessionTotalsPriv|35035912-0D1C-11D2-9B0C-00104B9A2869 +IHsmSessionTotals|35035913-0D1C-11D2-9B0C-00104B9A2869 +IHsmSession|6E7196DC-7F9C-460D-9E97-845490B81D60 +IHsmStoragePool|DD529292-3892-47A4-B016-C752A50CFC29 +IHsmSystemState|3F0DA041-69F1-11D2-AF82-00104B9A3758 +IHsmUpgradeRmsDb|B04E802A-8D06-46BE-8930-2AA2DA4C0DF2 +IHsmWorkItem|BF8BBCD0-C596-11D0-B16F-00A0C916F120 +IHsmWorkQueue|39A35CB0-C56B-11D0-B16F-00A0C916F120 +IHtmlArea|3050F64E-98B5-11CF-BB82-00AA00BDCE0B +IHtmlDlgHelper|3050F4DF-98B5-11CF-BB82-00AA00BDCE0B +IHtmlFontNamesCollection|3050F4EB-98B5-11CF-BB82-00AA00BDCE0B +IHtmlLoadOptions|A71A0808-0F88-11D1-BA19-00C04FD912D0 +IHttpRequest|4F0592B0-075D-11D0-8D69-00805F384B94 +IHttpStrm|AF4D9485-3285-405D-A023-E578B9C760CD +IIASAttributeEditor|CB2418D2-0709-11D2-95AB-0060B0576642 +IIASAttributeInfo|60F41BE3-06DF-11D2-95AA-0060B0576642 +IIASEnumerableAttributeInfo|9A407537-0A20-11D2-95B0-0060B0576642 +IIASNASVendors|C54EC3BA-7442-11D2-A036-0060B0576642 +IIASNetshJetHelper|20290BE7-A2AE-42C2-8883-FA09973ED3A5 +IICWSystemConfig|7954DD9A-8C2A-11D1-ADDB-0000F87734F0 +IID_ICLAPI_CLIENT|08FD99D1-CFB6-11CF-BC03-00AA006111E0 +IIEMsgAb|233A9696-667E-11D1-9DFB-006097D5040A +IIISAppConfig|D4E9B327-D9B4-4942-871E-1AF2FFCF6C0C +IIISCertObj|BD0C73BC-805B-4043-9C30-9A28D64DD7D2 +IIMAPCallback|E9E9D8A3-4EDD-11D0-874F-00AA00530EE9 +IIMAPStore|06AE7A01-6C5B-11D2-AD88-0080C7B6E3C5 +IIMAPTransport2|DA8283C0-37C5-11D2-ACD9-0080C7B6E3C5 +IIMAPTransport|E9E9D8A8-4EDD-11D0-874F-00AA00530EE9 +IIMManager|FBC37336-6E8F-4377-9D09-D49A32A14D5C +IIMSession|1D8CDB54-77A0-4500-809D-EFB47A1FF65E +IIMSession|F3D16DE6-045B-48CC-87AC-8AB75974685D +IIManageDB|2EAD7A80-9285-48E7-8DDE-88AC3BDFDE15 +IINETLOG_INFORMATION|CC557A71-F61A-11CF-BC0F-00AA006111E0 +IINSHandler|6342E1B5-94DB-11D1-ADE2-0000F87734F0 +IIasClient|6BC096D9-0CE6-11D1-BAAE-00C04FC2E20D +IIasComponent|6BC096B4-0CE6-11D1-BAAE-00C04FC2E20D +IIdentityChangeNotify|A9AE6C92-1D1B-11D2-B21A-00C04FA357FA +IIlsAttributes|440CC98C-20E6-11D0-8796-444553540000 +IIlsFilter|440CC98D-20E6-11D0-8796-444553540000 +IIlsMain|34526E14-4D7D-11D0-8F4B-00C04FC29FEE +IIlsNotify|551D25EE-4D7D-11D0-8F4B-00C04FC29FEE +IIlsProtocolNotify|440CC986-20E6-11D0-8796-444553540000 +IIlsProtocol|440CC985-20E6-11D0-8796-444553540000 +IIlsServer|8BCE6B64-85CE-11D0-9CA7-00A0C913B21E +IIlsUserNotify|440CC988-20E6-11D0-8796-444553540000 +IIlsUser|440CC982-20E6-11D0-8796-444553540000 +IImageDecodeEventSink|46483039-B251-11D2-A438-00C04FB177E3 +IImageDecodeFilter|46482132-B251-11D2-A438-00C04FB177E3 +IImageListPersistStream|4D4BE85C-9BF6-4218-999A-8EA489F08EF7 +IImageListPriv|E94CC23B-0916-4BA6-93F4-AA52B5355EE8 +IImageSyncControl|A67F6A0D-883B-44CE-AA93-87BA3017E19C +IImageSyncStepComplete|1DBCA562-5C92-474A-A276-382079164970 +IImagingDevInfo|342C69E6-2248-4E68-AEEB-AF02678715D2 +IImagingDevices|8EF3C147-4D40-4176-A1CD-2B0E4D9B2FCB +IImapAdminService|760BEF70-E6AD-11D0-B98D-00C04FC2F510 +IImapAdminSessions|760BEF72-E6AD-11D0-B98D-00C04FC2F510 +IImapAdminVirtualDirectory|760BEF73-E6AD-11D0-B98D-00C04FC2F510 +IImapAdminVirtualServer|760BEF71-E6AD-11D0-B98D-00C04FC2F510 +IImapAdmin|760BEF6F-E6AD-11D0-B98D-00C04FC2F510 +IImePadCallback|EFB26461-AEBA-11D2-83D2-00C04F7A06E5 +IImePadServerSHM|CEFCBEA2-BBC2-11D4-84C0-00C04F7A06E5 +IImePadServer|EFB26460-AEBA-11D2-83D2-00C04F7A06E5 +IImgCmdTarget|FF36E952-72E9-4EA0-92FB-B63FE5037D78 +IImnAccountManager2|C43DFC6F-62BB-11D2-A727-00C04F79E7C8 +IImnAccountManager|FD465481-1384-11D0-ABBD-0020AFDFD10A +IImnAccount|FD465482-1384-11D0-ABBD-0020AFDFD10A +IImnAdviseAccount|0A06BD31-166F-11D0-81B9-00C04FD85AB4 +IImnAdviseMigrateServer|8D0AED11-1638-11D0-81B9-00C04FD85AB4 +IImnEnumAccounts|FD465483-1384-11D0-ABBD-0020AFDFD10A +IInfoBase|66A2DB00-D706-11D0-A37B-00C04FC9DA04 +IInitAccessible|B6664DF7-0C46-460E-BA97-82ED46D0289E +IInitActivationPropertiesIn|000001A1-0000-0000-C000-000000000046 +IInitTrackPopupBar|4A7EFA30-795C-4167-8676-B78FC5330CC7 +IInitViewLinkedWebOC|E787F2C0-3D21-4D98-85C8-A038195BA649 +IInstalledApp|1BC752DF-9046-11D1-B8B3-006008059382 +IInstanceInfo|000001AD-0000-0000-C000-000000000046 +IInstantiationInfo|000001AB-0000-0000-C000-000000000046 +IInterceptorBase|D573B4B2-894E-11D2-B8B6-00C04FB9618A +IInterfaceFromWindowProp|00000135-0000-0000-C000-000000000046 +IInterfaceInfo|000001F7-0000-0000-C000-000000000046 +IInterfaceInfo|66A2DB08-D706-11D0-A37B-00C04FC9DA04 +IInterfaceProxyInit|39C299CB-70F2-11D1-B883-00C04FB9618A +IInterfaceStubInit|39C299CD-70F2-11D1-B883-00C04FB9618A +IInternalCallObj|57E03C63-A719-11D2-9351-0000F875AE17 +IInternalChannelObj|43DB3A8E-A440-11D2-934A-0000F875AE17 +IInternalConfExe|97799F9C-A969-11D2-9355-0000F875AE17 +IInternalConferenceObj|507708C5-A74A-11D2-9351-0000F875AE17 +IInternalConnection|72AD0770-6A9F-11D1-BCEC-0060088F444E +IInternalFtObj|053BBEFB-B3BA-11D2-9358-0000F875AE17 +IInternalMemberObj|6EC88CF8-A41B-11D2-9349-0000F875AE17 +IInternalSysInfoObj|34871E81-D33A-11D2-92C7-00C04F68D5AE +IInternetBindClient|79EAC9E2-BAF9-11CE-8C82-00AA004BA90B +IInternetCache|79EAC9EA-BAF9-11CE-8C82-00AA004BA90B +IInternetConnectionDeviceClient|04DF6139-5610-11D4-9EC8-00B0D022DD1F +IInternetConnectionDeviceSharedConnection|04DF6138-5610-11D4-9EC8-00B0D022DD1F +IInternetConnectionDevice|04DF6137-5610-11D4-9EC8-00B0D022DD1F +IInternetGatewayFinder|ABA3C980-65B5-4BDE-9096-2D162E4AD25D +IInternetGateway|75FBD24C-0D12-44AF-BFF4-219D3D8B178C +IInternetTransport|1F636C01-364E-11D0-81D3-00C04FD85AB4 +IIpxAdapterInfo|98133270-4B20-11D1-AB01-00805FC1270E +IIsaRequestDictionary|8EB03382-3670-11D0-9797-00A0C922E73E +IIsaRequest|8EB03380-3670-11D0-9797-00A0C922E73E +IIsaResponse|8EB03381-3670-11D0-9797-00A0C922E73E +IIsapiCore|928F6BD4-BD84-48F0-A55C-B71D1F515AF2 +IItemHandler|198A5F2D-E19F-49EA-9033-C975E0F376EC +IJavaZonePermissionEditor|85347F8A-C8B7-11D0-8823-00C04FB67C84 +IJumpBehavior|43AAC681-387C-11D2-BB7D-00A0C999C4C1 +IKeyCollection|1C733DD0-E1B5-11D0-9E58-00C04FB94FEF +IKeyFrameControl|C3341386-AF91-4EF9-83B6-BE3762E42ECB +IKeyUsage|41DD35A8-9FF9-45A6-9A7C-F65B2F085D1F +IKeyocxCtrl|48D17197-32CF-11D2-A337-00C04FD7C1FC +IKomMachineInfo|CBA6AB87-5F88-11D1-ADA0-00C04FC2ADC0 +IKsVolumeControl|52115EE0-DAAD-11CF-B484-00AA00C14A91 +ILCIDInfo|873F81FC-EA81-470E-9671-FA179A972070 +ILMAutoEffectBvr|B2A46902-74E0-11D2-9BEE-00C04FA34789 +ILMAvoidFollowBvr|61ABDB72-75CE-11D2-9528-0060B0C3C4F4 +ILMBehaviorFactory|B1549E57-3894-11D2-BB7F-00A0C999C4C1 +ILMCodecDownload|EB823ED0-110D-11D2-BAD2-00A0C999C4C0 +ILMEngine2|686D9E60-FF11-11D1-BABD-00A0C999C4C0 +ILMEngineExecute|CEFB610E-3E9F-11D2-9F06-0060B0C3C4F4 +ILMEngineWrapper|56565B88-3DD1-11D2-9F05-0060B0C3C4F4 +ILMEngine|C533ADF0-0C80-11D1-8C54-00A02468F316 +ILMJumpBvr|C4BE8E64-79B4-11D2-BBCF-00A0C999C4C1 +ILMReader2|7A6DE760-FF0E-11D1-BABD-00A0C999C4C0 +ILMReader|183C2599-0480-11D1-87EA-00C04FC29D46 +ILMSample|30C11F2C-78FD-11D2-952C-0060B0C3C4F4 +ILastError|A9C5109A-978A-4391-AC39-601FBE847654 +ILaunchTS|131CC2A0-7634-11D1-8B6B-0060089BD8C4 +ILegacyInfo|000001AC-0000-0000-C000-000000000046 +ILibrary|C95B78C2-1F20-40A8-BE54-F7CF874B8D6D +ILine|BEEDC08B-EBD2-11D0-A78F-00805F0D2083 +ILinkQueue|FF9A1BB6-1E96-11D3-BFCC-00C04FA3490A +IListPad|5D00F5B1-A357-11D1-A19C-0000F875B132 +IListSelector|69FDCD50-16CF-11D2-AF46-00C04FA31B90 +IListViewDefs|FFF9A8FB-06CB-11D2-9791-50C320524153 +IListViewDef|FFF9A8EB-06CB-11D2-9791-50C320524153 +ILiteControl|CF95A4C7-843A-4290-B82F-3CC4E3608F20 +ILocalCopy|679D9E36-F8F9-11D2-8DEB-00C04F6837D5 +ILocalMachine|60664CAF-AF0D-1005-A300-5C7D25FF22A0 +ILocalStorage|BD010A03-000B-11D0-D0DD-00A0C9190459 +ILocalStream|BD010A05-000B-11D0-D0DD-00A0C9190459 +ILogManager|4759DC11-8DA0-4261-BBFB-EC321911D1C9 +ILogScripting|26B9ECFF-A3D8-11D1-8B9C-080009DCC2FA +ILogger|D9598418-304E-4F94-B6A1-E642FE95ED57 +ILogonEnumUsers|60664CAF-AF0D-1004-A300-5C7D25FF22A0 +ILogonPageUI|65A05330-87EC-46FA-9497-824135168D54 +ILogonStatusHost|60664CAF-AF0D-1007-A300-5C7D25FF22A0 +ILogonUserEnumNotifications|60664CAF-AF0D-1002-A300-5C7D25FF22A0 +ILogonUserNotification|60664CAF-AF0D-1001-A300-5C7D25FF22A0 +ILogonUser|60664CAF-AF0D-1003-A300-5C7D25FF22A0 +ILogs|AAA9B130-C64E-400F-BC63-BA9C946082A6 +ILog|9FC21F08-F75C-4818-B42C-8A59DB3E33E7 +ILongPipe|FC693210-CBEB-11D0-9B61-00C04FC3398C +ILoop|00000136-0001-0008-C000-000000000046 +IMCISMessageFilter|F174E5B0-9046-11D0-A9E8-00AA00685C74 +IMD5|B8C307A6-1B55-11D2-BED2-00C04FB6FA0D +IMDCOMSINKA|5229EA36-1BDF-11D0-9D1C-00AA00A70D51 +IMDCOMSINKW|6906EE20-B69F-11D0-B9B9-00A0C922E750 +IMDCOM|C1AA48C0-FACC-11CF-9D1A-00AA00A70D51 +IMDH|89B231CE-B97B-41A4-9B22-88D3564B4927 +IMLStrAttrAStr|39A623C1-5109-11D1-998C-00AA00601EA8 +IMLStrAttrLocale|39A623C3-5109-11D1-998C-00AA00601EA8 +IMLStrAttrLong|39A623C2-5109-11D1-998C-00AA00601EA8 +IMLStrAttrNotifySink|8D0DCF40-520D-11D1-998C-00AA00601EA8 +IMLStrAttrWStr|39A623C0-5109-11D1-998C-00AA00601EA8 +IMLStrAttr|9C0782C0-5087-11D1-998C-00AA00601EA8 +IMLangStringNotifySink|4D94B420-5382-11D1-998C-00AA00601EA8 +IMMBehavior|18B4A8B2-5F36-11D2-B957-3078302C2030 +IMMCButtonMenus|8B034116-FBB2-11D1-9785-EAA220524153 +IMMCButtonMenu|91CC37E8-CE2B-11D1-B44D-7E92AF000000 +IMMCButtons|91CC37E3-CE2B-11D1-B44D-7E92AF000000 +IMMCButton|91CC37E5-CE2B-11D1-B44D-7E92AF000000 +IMMCClipboardDataObject|5491AB67-AFEB-48B1-B8DF-B2D63810EF40 +IMMCClipboard|1D686374-FA5B-11D1-9783-8A7820524153 +IMMCColumnHeaders|3B15D610-CD57-11D1-B44C-44750B000000 +IMMCColumnHeader|3B15D612-CD57-11D1-B44C-44750B000000 +IMMCConsoleVerbs|91CC37DC-CE2B-11D1-B44D-7E92AF000000 +IMMCConsoleVerb|91CC37DD-CE2B-11D1-B44D-7E92AF000000 +IMMCContextMenuProvider|486AAF12-E559-11D2-97F1-00104B880587 +IMMCControlbar|91CC37D8-CE2B-11D1-B44D-7E92AF000000 +IMMCControl|831DF6C8-C754-11D2-952C-00C04FB92EC2 +IMMCCtrlEvent|69C7C394-905C-11D2-91AD-00C04FA37E1F +IMMCCtrl|3D5905ED-523C-11D1-9FEA-00600832DB4A +IMMCDataObjects|1D686372-FA5B-11D1-9783-8A7820524153 +IMMCDataObject|91CC37D2-CE2B-11D1-B44D-7E92AF000000 +IMMCDisplayObject|995A890B-F4C9-11D1-A1BF-0000F875B132 +IMMCImageLists|FFF9A8F5-06CB-11D2-9791-50C320524153 +IMMCImageList|87BC1808-C8FB-11D1-B44A-30F4BC000000 +IMMCImages|87BC180A-C8FB-11D1-B44A-30F4BC000000 +IMMCImage|87BC180C-C8FB-11D1-B44A-30F4BC000000 +IMMCListItems|15DC07F2-CC1B-11D1-B44B-86B824000000 +IMMCListItem|15DC07F4-CC1B-11D1-B44B-86B824000000 +IMMCListPadInfo|09474571-B2FB-11D1-A1A1-0000F875B132 +IMMCListSubItems|15DC07F6-CC1B-11D1-B44B-86B824000000 +IMMCListSubItem|15DC07F9-CC1B-11D1-B44B-86B824000000 +IMMCListView|87BC180E-C8FB-11D1-B44A-30F4BC000000 +IMMCMenuDefs|FFF9A8F7-06CB-11D2-9791-50C320524153 +IMMCMenuDef|E39FA142-57D2-11D2-97BE-00104B880587 +IMMCMenus|B38E6F10-27FD-11D3-AA41-00104B880587 +IMMCMenu|91CC37D4-CE2B-11D1-B44D-7E92AF000000 +IMMCMessageView|3AD37100-2D81-11D3-AA41-00104B880587 +IMMCPropertyPage|558720A2-EB7E-11D2-97F3-00104B880587 +IMMCPropertySheetProvider|19173E92-E783-11D2-97F1-00104B880587 +IMMCPropertySheet|8B034114-FBB2-11D1-9785-EAA220524153 +IMMCRemote|67B70690-8885-11D2-809C-6C67C0000000 +IMMCStringTable|2BAEE3E3-BC7C-11D2-97EB-00104B880587 +IMMCTask|3D112E21-62B2-11D1-9FEF-00600832DB4A +IMMCToolbars|FFF9A8F9-06CB-11D2-9791-50C320524153 +IMMCToolbar|91CC37DF-CE2B-11D1-B44D-7E92AF000000 +IMMEventCB|DC2F58E6-4AD2-11D2-B953-3078302C2030 +IMMFactory|083A2970-4AD3-11D2-B953-3078302C2030 +IMMPlayer|ABC4AA1C-5BBC-11D2-B957-3078302C2030 +IMMTimeline|03030490-4AD3-11D2-B953-3078302C2030 +IMPCConnection|8E82AD14-D1A3-11D2-9374-00C04F72DAF7 +IMPCUploadJob|8E82AD10-D1A3-11D2-9374-00C04F72DAF7 +IMPCUpload|8E82AD13-D1A3-11D2-9374-00C04F72DAF7 +IMSAdminBaseSink|1E056350-761E-11D0-9BA1-00A0C922E703 +IMSAdminBase|CBA424F0-483A-11D0-9D2A-00A0C922E703 +IMSConfigCtl|BE122C84-2378-4B35-9E0A-3E5A379D0323 +IMSDVDAdm|DF55E77C-D1F6-4681-BFF7-CD235F8122F3 +IMSFTAppProfEventService|6C736DC2-5B33-452C-B283-4A073D656A7A +IMSIisLb|996D0030-65C5-11D1-A700-00A0C922E752 +IMSInfo|2A930152-AE13-4659-A011-36377D5FC438 +IMSMFBBtn|A43B9418-A9BC-4888-97D5-48717A3D2FE0 +IMSMFBar|54B56DEC-639B-4D6C-9266-583A8E5BF7A4 +IMSMFImg|B0C2A59F-39FA-4D60-BB1E-EBE409E57BAC +IMSMFSldr|845F36EE-5C8D-418A-B4D7-7B5468AEDCCC +IMSMFText|5DB6854E-5CA4-4756-BE2F-DD31CE5DF0ED +IMSMQPropertyBag|07F19951-AB28-11D2-8936-000000000000 +IMSMQRuleHandler|B0CDBF11-9774-11D2-8929-000000000000 +IMSMQRuleSet|65221283-B64E-11D2-894C-0008C70C0622 +IMSMQTriggerSet|1D9F85BF-9666-11D2-8927-0008C70C0622 +IMSMQTriggersConfig|7C55D6A1-F584-11D2-89B2-000000000000 +IMSMetaBase|0C1BEA50-4FD7-11D0-B9AC-00A0C922E750 +IMSMetaDataItem|03E31F00-627C-11D0-B9AD-00A0C922E750 +IMSMetaKey|34617B10-7FBC-11D0-B9B1-00A0C922E750 +IMSPID|CA785AEF-EA86-46E6-BE6F-9EE6CABBFA67 +IMSTTSEngineInit|8A7C38EB-D8B0-11D2-B504-00C04F797396 +IMSVidGraphSegment|1C15D482-911D-11D2-B632-00C04F79498E +IMSVoiceData|6265B7E1-0340-11D3-B50C-00C04F797396 +IMSWebDVD|38EE5CED-4B62-11D3-854F-00A0C9C898E7 +IMagic|3037B6E1-0B58-4C34-AA63-A958D2A4413D +IMailAutoDiscovery|80402DEE-B114-4D32-B44E-82FD8234C92A +IMailMsgAQueueListEntry|A83BF034-A988-11D2-94E8-00C04FA379F1 +IMailMsgBindATQ|ACCB770C-C9D5-11D1-9FF2-00C04FA37348 +IMailMsgBind|38CB448A-CA62-11D1-9FF3-00C04FA37348 +IMailMsgCleanupCallback|951C04A1-29F0-4B8E-9ED5-836C73766051 +IMailMsgEnumMessages|E760A840-C8F1-11D1-9FF2-00C04FA37348 +IMailMsgLoggingPropertyBag|4CB17416-EC53-11D1-AA65-00C04FA35B82 +IMailMsgNotify|0F7C3C30-A8AD-11D1-AA91-00AA006BC80B +IMailMsgProperties|AB95FB40-A34F-11D1-AA8A-00AA006BC80B +IMailMsgPropertyBag|D6D0509C-EC51-11D1-AA65-00C04FA35B82 +IMailMsgPropertyManagement|A2F196C0-A351-11D1-AA8A-00AA006BC80B +IMailMsgPropertyReplication|B5F16352-C366-11D1-AA5E-00C04FA35B82 +IMailMsgPropertyStream|A44819C0-A7CF-11D1-AA91-00AA006BC80B +IMailMsgPushContent|7C5B895E-C9DF-11D1-9FF2-00C04FA37348 +IMailMsgQueueMgmt|B2564D0A-D5A1-11D1-9FF7-00C04FA37348 +IMailMsgRecipientsAdd|4C28A700-A892-11D1-AA91-00AA006BC80B +IMailMsgRecipientsBase|D1A97920-A891-11D1-AA91-00AA006BC80B +IMailMsgRecipients|19507FE0-A892-11D1-AA91-00AA006BC80B +IMailMsgRegisterCleanupCallback|00561C2F-5E90-49E5-9E73-7BF9129298A0 +IMailMsgStoreDriverValidateContext|C6742794-AD31-4711-BE73-9869142A8A23 +IMailMsgStoreDriver|246AAE60-ACC4-11D1-AA91-00AA006BC80B +IMailMsgValidateContext|60A482B1-B311-4ECA-A3A3-907F9DAFD16F +IMailMsgValidate|6717B03C-072C-11D3-94FF-00C04FA379F1 +IMailProtocolADEntry|40EF8C68-D554-47ED-AA37-E5FB6BC91075 +IMailTransportCategorize|86F9DA7A-EB6E-11D1-9DF3-00C04FA322BA +IMailTransportNotify|6E1CAA77-FCD4-11D1-9DF9-00C04FA322BA +IMailTransportOnPostCategorize|76719653-05A6-11D2-9DFD-00C04FA322BA +IMailTransportOnPreCategorize|A3ACFB0E-83FF-11D2-9E14-00C04FA322BA +IMailTransportRouterReset|A928AD12-1610-11D2-9E02-00C04FA322BA +IMailTransportRouterSetLinkState|B870CE28-A755-11D2-A6A9-00C04FA3490A +IMailTransportRoutingEngine|A928AD13-1610-11D2-9E02-00C04FA322BA +IMailTransportSetRouterReset|A928AD11-1610-11D2-9E02-00C04FA322BA +IMailTransportSubmission|CE681916-FF14-11D1-9DFB-00C04FA322BA +IMainPageUI|F949E516-D265-4990-9AE8-9456BEC4C8A5 +IManVolProp|EAA46600-E736-11D0-B988-00A0C9190447 +IManageTelnetSessions|034634FD-BA3F-11D1-856A-00A0C944138C +IManifestApplicationInfo|1367877F-BE85-40AB-B16C-44B9C23B1819 +IMapMIMEToCLSID|46482131-B251-11D2-A438-00C04FB177E3 +IMapiUtil|004D1AEF-D66C-4225-B231-CEF41B4C503A +IMarkerSink|F882540E-D8E8-11D2-A4FF-00C04F79A597 +IMarkerSource|CC913DA4-D8E7-11D2-A4FF-00C04F79A597 +IMarkupCallback|01E13875-2E58-4671-BE46-59945432BE6E +IMarsExternal|B616B681-04D6-11D3-9883-00C04FA35C89 +IMarsHost|CC6FFEB0-E379-427A-9810-A16B7A826A89 +IMarsPanelCollection|988934A1-064B-11D3-BB80-00104B35E7F9 +IMarsPanel|988934A0-064B-11D3-BB80-00104B35E7F9 +IMarsPlaceCollection|988934A3-064B-11D3-BB80-00104B35E7F9 +IMarsPlace|988934A2-064B-11D3-BB80-00104B35E7F9 +IMarsWindowOM|E2984BA5-294A-4CC5-8CA9-82CDDEC72DD0 +IMarshalEnvoy|000001C8-0000-0000-C000-000000000046 +IMarshalEx|25FF997D-5889-11D2-B8AC-00C04FB9618A +IMarshalOptions|4C1E39E1-E3E3-4296-AA86-EC938D896E92 +IMarshalSomeone|174F4929-53EC-11D2-B8AC-00C04FB9618A +IMarshalableTI|466D66F9-9616-11D2-9342-0000F875AE17 +IMarshallingManager|F6EBEB2B-C8DE-11D1-B88E-00C04FB9618A +IMarshallingService|A41B20D4-8ADD-11D2-B8B6-00C04FB9618A +IMatchCollection|3F4DACA2-160D-11D2-A8E9-00104B365C9F +IMatch|3F4DACA1-160D-11D2-A8E9-00104B365C9F +IMcsDomPlugIn|5455C810-227D-11D3-8ADD-00A0C9AFE114 +IMdSync|C97912DD-997E-11D0-A5F6-00A0C922E752 +IMediaBehavior|BB24BBE0-1EEC-422B-A397-EDBC31FB3A56 +IMediaChannelBuilder|C35A34FA-B92B-11D1-AA97-00C04FC9B202 +IMediaChannel|17A7DB52-B92C-11D1-AA97-00C04FC9B202 +IMediaDetFilter|784215B2-0D2E-11D3-920A-00C0DF10D434 +IMediaDet|65BD0710-24D2-4FF7-9324-ED2E5D3ABAFA +IMediaHolder|79EAC9CE-BAF9-11CE-8C82-00AA004BA90B +IMediaHost|EF508010-C806-4356-8492-D15E616F6F37 +IMediaInfo|072E876C-B1CD-4344-A038-4668E931DDAD +IMediaItem|BB24BBE1-1EEC-422B-A397-EDBC31FB3A56 +IMediaLocator|288581E0-66CE-11D2-918F-00C0DF10D434 +IMediaParamsRecordNotify|FEA74878-4E39-4267-8A17-6AAF0536FF7C +IMediaParamsRecord|21B64D1A-8E24-40F6-8797-44CC021B2A0A +IMediaStreamBuilder|534093D6-260E-11D1-BC3D-00AA00A13C86 +IMemoryStream|7FCFCFF2-2D6B-11D1-AD60-00C04FC2ADC0 +IMenuExt|BA9FCDE1-5F70-4F7B-AA5A-7B77753888C0 +IMessageFolder|E883FC76-EC08-11D1-9A53-00C04FA309D4 +IMessageList|DE89B950-A597-11D1-9E46-006097D50408 +IMessageRouterLinkStateNotification|B870CE29-A755-11D2-A6A9-00C04FA3490A +IMessageRouter|A928AD14-1610-11D2-9E02-00C04FA322BA +IMessageServer|86847A47-EDAF-11D1-9A54-00C04FA309D4 +IMessageStore|E883FC75-EC08-11D1-9A53-00C04FA309D4 +IMessageTableNotify|816C1167-F649-11D1-9A57-00C04FA309D4 +IMessageTable|B4B796AA-EC1C-11D1-9A54-00C04FA309D4 +IMessengerApp2|FF55D627-CF5B-40DE-850F-62D20BC241C8 +IMessengerApp3|28E28123-7DC5-45D3-860E-8EE1C3681BD5 +IMessengerApp|3656FE3E-16A6-11D2-B49D-00C04FB90376 +IMessengerApp|F3A614DD-ABE0-11D2-A441-00C04F795683 +IMessengerContacts|E7479A0D-BB19-44A5-968F-6F41D93EE0BC +IMessengerContact|E7479A0F-BB19-44A5-968F-6F41D93EE0BC +IMessengerIMWindows|35EDD1CC-1A8C-11D2-B49D-00C04FB90376 +IMessengerIMWindow|35EDD1CD-1A8C-11D2-B49D-00C04FB90376 +IMessengerWindow|D6B0E4C8-FAD6-4885-B271-0DC5A584ADF8 +IMessenger|D50C3186-0F89-48F8-B204-3604629DEE10 +IMetaDataAssemblyImportControl|CC8529D9-F336-471B-B60A-C7C8EE9B8492 +IMetaProperties|E7F78F69-8326-48A0-8E54-BBDCEE43BA70 +IMetaPropertyCondition|98FAAEF5-397A-4372-93A3-FB3DA49B3EF1 +IMetaPropertySets|E8FD768C-EC4E-4DAB-A09C-011E8ECAE4D2 +IMetaPropertySet|F71020D2-A467-4EB7-839A-63C8F40C7AB4 +IMetaPropertyTypes|9BF4984A-4CFE-4588-9FCF-828C74EF7104 +IMetaPropertyType|86502400-213B-4ADF-A1E2-76365E7172BD +IMetaProperty|A4BBD2C0-D7E4-4FC2-8FB0-176DDBCB3D72 +IMetaUtil|B40F6F4D-E116-11D0-9E58-00C04FB94FEF +IMigrationInternal|A81B1E01-FF1C-4264-B214-5FE1591DD4A8 +IMigrationWizardAuto|CE20DAB9-B353-469B-8B4D-6DBB3A7BA016 +IMigration|FFA0E908-9849-4CFC-803E-F6A8ACF704A6 +IMimeAddressTableW|11C8D742-0FB4-11D3-A01E-00A0C90C9BB6 +IMimeAddressTable|C558834A-7F86-11D0-8252-00C04FD85AB4 +IMimeAllocator|C5588351-7F86-11D0-8252-00C04FD85AB4 +IMimeBodyW|2F38042B-D02F-11D2-A004-00A0C90C9BB6 +IMimeBody|C558834C-7F86-11D0-8252-00C04FD85AB4 +IMimeEditTagCollection|D09EE528-7B38-11D2-8C12-00C04FA31009 +IMimeEditTag|70183210-7B36-11D2-8C12-00C04FA31009 +IMimeEdit|6A98B73E-8C4D-11D1-BDFF-00C04FA31009 +IMimeEnumAddressTypes|C5588354-7F86-11D0-8252-00C04FD85AB4 +IMimeEnumHeaderRows|C558834D-7F86-11D0-8252-00C04FD85AB4 +IMimeEnumMessageParts|C5588350-7F86-11D0-8252-00C04FD85AB4 +IMimeEnumProperties|FD853CEE-7F86-11D0-8252-00C04FD85AB4 +IMimeHeaderTable|FD853CD1-7F86-11D0-8252-00C04FD85AB4 +IMimeInternational|C5588349-7F86-11D0-8252-00C04FD85AB4 +IMimeMessageCallback|761AA641-7BDA-11D1-8AA9-00C04FB951F3 +IMimeMessageParts|C558834F-7F86-11D0-8252-00C04FD85AB4 +IMimeMessageTree|FD853CD4-7F86-11D0-8252-00C04FD85AB4 +IMimeMessageW|F90ADFEF-D01F-11D2-A004-00A0C90C9BB6 +IMimeMessage|FD853CD5-7F86-11D0-8252-00C04FD85AB4 +IMimeObjResolver|FECEAFFD-C441-11D1-960E-00C04FBD7C09 +IMimePropertySchema|FD853CEC-7F86-11D0-8252-00C04FD85AB4 +IMimePropertySet|FD853CD3-7F86-11D0-8252-00C04FD85AB4 +IMimeSecurity2|80830B40-962C-11D2-8AF6-0080C76B34C6 +IMimeSecurityCallback|BA715AE0-A740-11D2-8B22-0080C76B34C6 +IMimeSecurity|C5588353-7F86-11D0-8252-00C04FD85AB4 +IMimeWebDocument|EE519F11-851A-11D0-825C-00C04FD85AB4 +IMinimalTransfer|9BD13BDB-CDA4-4890-8A78-29C2419E448F +IMixers|89659D1F-A26F-4896-A6FC-C927AACDAFFC +IMountingMedia|38E504D8-CBC5-4701-BAC5-D4F85B45FC79 +IMoveBehavior|E4FFCB30-486B-11D2-9655-00A0C999C4C0 +IMoveMoney|5A67AAE3-37DA-11D2-955A-004005A2F9B1 +IMover|42ADFF00-491E-11D3-8AEE-00A0C9AFE114 +IMqGenObj|73395C88-702F-4278-AFC1-5C044B914585 +IMruDataList|FE787BCB-0EE8-44FB-8C89-12F508913C40 +IMruPidlList|47851649-A2EF-4E67-BAEC-C6A153AC72EC +IMsDataObject|374BA600-3AA0-11D1-B990-00A0C9190447 +IMsgLog|2229D170-4590-11D1-AA63-00AA006BC80B +IMsgRecipientList|B4B23803-4710-11D1-B78D-0080C731C893 +IMsgTrackLog|1BC3580E-7E4F-11D2-94F4-00C04F79F1D6 +IMsgrAb|233A9696-667E-11D1-9DFB-006097D50408 +IMsgrIMSessions|6FD143E6-20A5-11D2-91AD-0000F81FEFC9 +IMsgrIMSession|82E11592-20F5-11D2-91AD-0000F81FEFC9 +IMsgrLock|36602AFA-4859-4DF5-820B-BF35ACAA16CA +IMsgrObject2|218CB455-20B6-11D2-8E17-0000F803A446 +IMsgrObject|218CB451-20B6-11D2-8E17-0000F803A446 +IMsgrSP2|E5B42159-AF2C-11D2-8D9D-0000F875C541 +IMsgrSP|E5B42158-AF2C-11D2-8D9D-0000F875C541 +IMsgrServices|659ECAD8-A5C0-11D2-A440-00C04F795683 +IMsgrService|659ECAD9-A5C0-11D2-A440-00C04F795683 +IMsgrSessionManager|305D86C6-6896-4099-91F5-CB7BA7733563 +IMsgrSession|42D7CAFC-0167-4941-A5D8-9FD7F104C41A +IMsgrUser2|218CB456-20B6-11D2-8E17-0000F803A446 +IMsgrUsers|218CB454-20B6-11D2-8E17-0000F803A446 +IMsgrUser|218CB453-20B6-11D2-8E17-0000F803A446 +IMsg|2DB263AD-499F-11D1-B78F-0080C731C893 +IMsg|507E7D61-EE7C-11D0-869A-00C04FD65616 +IMsiCustomAction|000C1025-0000-0000-C000-000000000046 +IMsiMessage|000C101D-0000-0000-C000-000000000046 +IMsiMethodStatusSink|768ECA52-017E-11D3-A97D-00A0C9954921 +IMsiProductMethods|3E6A93E0-FDAD-11D2-A97B-00A0C9954921 +IMsiRemoteAPI|000C1033-0000-0000-C000-000000000046 +IMsiServer|000C101C-0000-0000-C000-000000000046 +IMsiSoftwareFeatureMethods|E293BA80-FDAD-11D2-A97B-00A0C9954921 +IMsmDependencies|0ADDA82D-2C26-11D2-AD65-00A0C9AF11A6 +IMsmDependency|0ADDA82B-2C26-11D2-AD65-00A0C9AF11A6 +IMsmErrors|0ADDA82A-2C26-11D2-AD65-00A0C9AF11A6 +IMsmError|0ADDA828-2C26-11D2-AD65-00A0C9AF11A6 +IMsmGetFiles|7041AE26-2D78-11D2-888A-00A0C981B015 +IMsmMerge|0ADDA82E-2C26-11D2-AD65-00A0C9AF11A6 +IMsmStrings|0ADDA827-2C26-11D2-AD65-00A0C9AF11A6 +IMsnMessengerIMWindow2|70BF15A8-58CD-4687-A8B3-D14E2F760371 +IMsnMessengerIMWindow|2B7E6AA9-C4FA-4951-815B-4AFE39D81453 +IMsoOfficeAsst|000C0305-0000-0000-C000-000000000046 +IMsoTbFrame|000C0114-0000-0000-C000-000000000046 +IMultiGraphHost|DE178E3C-EBE0-4E77-ABC3-13C9D2C5D636 +IMultiMediaStreamBuilder|534093D7-260E-11D1-BC3D-00AA00A13C86 +IMulticastConfig|1CB42CC8-D32C-4F73-9267-C114DA470378 +IMulticastControl|410FA507-4DC6-415A-9014-633875D5406E +IMulticastReceiverConfig|7AF0E2E5-BDC5-430E-8245-FD28DCA8A064 +IMulticastSenderConfig|3B3D86D9-B903-4F00-86DA-B1BEB473B484 +IMultiplePropertyAccess|EC81FEDE-D432-11CE-9244-0020AF6E72DB +IMusicCenterHelp|CAC350B3-5F38-4585-A1A4-E613E7A94D38 +IMyComputer|58221C68-EA27-11CF-ADCF-00AA00A80033 +IMyInfoCtl|4682C829-B2FF-11D0-95A8-00A0C92B77A9 +IMy|FB62A64E-E109-11D0-AD6E-00C04FD8FDFF +INATEventsSink|2C49D9A1-A48F-41E3-AC0B-7666DEDE5EE0 +INNTPCallback|0DF2C7E6-3435-11D0-81D0-00C04FD85AB4 +INNTPDispatcher|1826B029-E80A-11D0-B15B-00C04FC2F3B3 +INNTPFilterOnPostFinal|1826B030-E80A-11D0-B15B-00C04FC2F3B3 +INNTPFilter|1826B028-E80A-11D0-B15B-00C04FC2F3B3 +INNTPFilter|8B846370-20BE-11D2-94D6-00C04FA379F1 +INNTPPropertyBag|F5AD0D78-AF9F-11D1-862E-00C04FB960EA +INNTPTransport2|0DF2C7ED-3435-11D0-81D0-00C04FD85AB4 +INNTPTransport|0DF2C7E5-3435-11D0-81D0-00C04FD85AB4 +INSCTree2|801C1AD5-C47C-428C-97AF-E991E4857D97 +INSCTree|43A8F463-4222-11D2-B641-006097DF5BD4 +INamespaceProxy|CF1609EC-FA4B-4818-AB01-55643367E66D +INamespacePrshtActions|05238C14-A6E1-11D0-9A84-00C04FD8DBF7 +INat|FDD384CC-78C6-4E6D-8694-1DACBEE57F96 +INetCfgComponentPrivate|98133273-4B20-11D1-AB01-00805FC1270E +INetCfgInternalSetup|98133276-4B20-11D1-AB01-00805FC1270E +INetCfgSpecialCase|C0E8AE95-306E-11D1-AACF-00805FC1270E +INetConnection2|FAEDCF6A-31FE-11D1-AAD2-00805FC1270E +INetConnectionBrandingInfo|FAEDCF5B-31FE-11D1-AAD2-00805FC1270E +INetConnectionCMUtil|FAEDCF60-31FE-11D1-AAD2-00805FC1270E +INetConnectionCommonUi|C08956A5-1CD3-11D1-B1C5-00805FC1270E +INetConnectionHNetUtil|FAEDCF64-31FE-11D1-AAD2-00805FC1270E +INetConnectionManager2|FAEDCF69-31FE-11D1-AAD2-00805FC1270E +INetConnectionManagerDebug|FAEDCF5D-31FE-11D1-AAD2-00805FC1270E +INetConnectionManagerEvents|C08956BA-1CD3-11D1-B1C5-00805FC1270E +INetConnectionNotifySink|FAEDCF5C-31FE-11D1-AAD2-00805FC1270E +INetConnectionPropertyUi2|C08956B9-1CD3-11D1-B1C5-00805FC1270E +INetConnectionPropertyUi|C08956A4-1CD3-11D1-B1C5-00805FC1270E +INetConnectionRefresh|FAEDCF5F-31FE-11D1-AAD2-00805FC1270E +INetConnectionStatisticsNotifySink|1355C841-9F50-11D1-A927-00805FC1270E +INetConnectionSysTray|FAEDCF65-31FE-11D1-AAD2-00805FC1270E +INetConnectionUiLock|FAEDCF50-31FE-11D1-AAD2-00805FC1270E +INetConnectionUiUtilities|FAEDCF5E-31FE-11D1-AAD2-00805FC1270E +INetConnectionWizardUiContext|FAEDCF52-31FE-11D1-AAD2-00805FC1270E +INetConnectionWizardUi|FAEDCF51-31FE-11D1-AAD2-00805FC1270E +INetCrawler|49C929EE-A1B7-4C58-B539-E63BE392B6F3 +INetDefaultConnection|FAEDCF66-31FE-11D1-AAD2-00805FC1270E +INetInboundConnection|FAEDCF53-31FE-11D1-AAD2-00805FC1270E +INetInstallQueue|98133274-4B20-11D1-AB01-00805FC1270E +INetLanConnectionWizardUi|FAEDCF56-31FE-11D1-AAD2-00805FC1270E +INetLanConnection|FAEDCF54-31FE-11D1-AAD2-00805FC1270E +INetMachinePolicies|FAEDCF68-31FE-11D1-AAD2-00805FC1270E +INetObjEnumerator|1B8FAD10-191D-11D3-8C7F-0090270D48D1 +INetRasConnection|FAEDCF57-31FE-11D1-AAD2-00805FC1270E +INetSharedAccessConnection|FAEDCF55-31FE-11D1-AAD2-00805FC1270E +INetStatisticsEngine|1355C842-9F50-11D1-A927-00805FC1270E +INewsStore|522E4F81-2C98-11D2-AACA-006097D474C4 +INewsTreeIterator|53F10148-AFA8-11D1-862E-00C04FB960EA +INewsTree|9D2DE8DC-AFC4-11D1-862E-00C04FB960EA +INextLink|E0049866-0766-11D1-8AAB-00C0F00910F9 +INmAppletClientSite|D7D2064E-21C0-11D2-92EE-0000F875AE17 +INmAppletNotify|755655EC-1126-11D2-92D9-0000F875AE17 +INmApplet|93590E10-09EA-11D2-92D3-0000F875AE17 +INmCallNotify2|068B0805-718C-11D0-8B1A-00A0C91BC90E +INmCallNotify|068B0705-718C-11D0-8B1A-00A0C91BC90E +INmCallNotify|4C04DBFC-E935-411D-87B4-028148B6B60C +INmCall|068B0704-718C-11D0-8B1A-00A0C91BC90E +INmCall|F0E5EE14-8112-4AF3-A0D3-94C9F43FABC4 +INmChannelAppShareNotify|068B072B-718C-11D0-8B1A-00A0C91BC90E +INmChannelAppShare|068B072A-718C-11D0-8B1A-00A0C91BC90E +INmChannelAudioNotify|068B0725-718C-11D0-8B1A-00A0C91BC90E +INmChannelAudio|068B0724-718C-11D0-8B1A-00A0C91BC90E +INmChannelData2|068B0822-718C-11D0-8B1A-00A0C91BC90E +INmChannelDataNotify2|068B0823-718C-11D0-8B1A-00A0C91BC90E +INmChannelDataNotify|068B0723-718C-11D0-8B1A-00A0C91BC90E +INmChannelDataNotify|BD8CED3B-6953-4375-9252-9F7C87EC2804 +INmChannelData|00DA3B21-2C7D-479A-8F43-5D0BF3E552EA +INmChannelData|068B0722-718C-11D0-8B1A-00A0C91BC90E +INmChannelFtNotify|068B0729-718C-11D0-8B1A-00A0C91BC90E +INmChannelFt|068B0728-718C-11D0-8B1A-00A0C91BC90E +INmChannelNotify|068B0721-718C-11D0-8B1A-00A0C91BC90E +INmChannelVideoNotify|068B0727-718C-11D0-8B1A-00A0C91BC90E +INmChannelVideo|068B0726-718C-11D0-8B1A-00A0C91BC90E +INmChannel|068B0720-718C-11D0-8B1A-00A0C91BC90E +INmConference2|068B0810-718C-11D0-8B1A-00A0C91BC90E +INmConferenceNotify2|711EC740-6867-11D2-A9A8-00C04FD91A6F +INmConferenceNotify|068B0711-718C-11D0-8B1A-00A0C91BC90E +INmConferenceNotify|3FA17F19-EB23-419B-85CA-882AA1ACF62D +INmConference|068B0710-718C-11D0-8B1A-00A0C91BC90E +INmConference|1BFBB75A-FBE3-4E7F-94C4-629A346F31F5 +INmFt|068B0732-718C-11D0-8B1A-00A0C91BC90E +INmManager2|068B0801-718C-11D0-8B1A-00A0C91BC90E +INmManagerNotify|068B0702-718C-11D0-8B1A-00A0C91BC90E +INmManagerNotify|EC7A4454-9DB5-4F35-BC98-F04376CA984D +INmManager|068B0701-718C-11D0-8B1A-00A0C91BC90E +INmManager|0855E276-E230-428E-ACB9-8F2C7CD42848 +INmMember|068B0712-718C-11D0-8B1A-00A0C91BC90E +INmMember|315D16C6-7854-4690-9C71-1358978E70DC +INmObject|068B0780-718C-11D0-8B1A-00A0C91BC90E +INmSharableApp|068B0734-718C-11D0-8B1A-00A0C91BC90E +INmSysInfo2|068B0803-718C-11D0-8B1A-00A0C91BC90E +INmSysInfoNotify|AF9A9EAF-41BC-11D2-930E-0000F875AE17 +INmSysInfo|068B0703-718C-11D0-8B1A-00A0C91BC90E +INntpAdminExpiration|772BBAD0-7A22-11D0-895D-00AA00A74BF2 +INntpAdminFeeds|3241F06C-6D68-11D0-8950-00AA00A74BF2 +INntpAdminGroups|3241F071-6D68-11D0-8950-00AA00A74BF2 +INntpAdminRebuild|DEE3B230-A3C2-11D0-896E-00AA00A74BF2 +INntpAdminSessions|3241F076-6D68-11D0-8950-00AA00A74BF2 +INntpAdmin|3241F062-6D68-11D0-8950-00AA00A74BF2 +INntpComplete|5EFC52FC-EADF-11D1-9212-00C04FA322A5 +INntpDriverPrepare|D61569A0-D3F9-11D1-A58C-00C04FA375BA +INntpDriverSearch|9E2D8DE8-6926-11D2-9F03-00C04F8EF2F1 +INntpDriver|ADD1050F-99C5-11D1-9128-00C04FC30A64 +INntpFeed|CDDE8050-AE09-11D0-8974-00AA00A74BF2 +INntpOneWayFeed|CDDE8051-AE09-11D0-8974-00AA00A74BF2 +INntpSearchResults|B72A754E-746C-11D2-9F04-00C04F8EF2F1 +INntpServer|C7BAE7B4-DEE3-11D1-94CF-00C04FA379F1 +INntpService|3241F07B-6D68-11D0-8950-00AA00A74BF2 +INntpVirtualRoots|AA068DC1-A635-11D0-896F-00AA00A74BF2 +INntpVirtualRoot|AA068DC0-A635-11D0-896F-00AA00A74BF2 +INntpVirtualServer|3241F067-6D68-11D0-8950-00AA00A74BF2 +INodeTypes|B6994FB4-1DB6-11D2-97A3-E22420524153 +INodeType|B6994FB2-1DB6-11D2-97A3-E22420524153 +INotificationCB|D782CCBA-AFB0-43F1-94DB-FDA3779EACCB +INotificationHelper|C733E4AB-576E-11D0-B28C-00C04FD7CD22 +INotificationManager|95531501-8782-4845-901D-312F36BA6C6E +INotificationMgr|C733E4A4-576E-11D0-B28C-00C04FD7CD22 +INotificationPing|C733E4AC-576E-11D0-B28C-00C04FD7CD22 +INotificationProcessMgr0|C733E4AE-576E-11D0-B28C-00C04FD7CD22 +INotificationProcessMgr|C733E4AF-576E-11D0-B28C-00C04FD7CD22 +INotificationReport|C733E4A7-576E-11D0-B28C-00C04FD7CD22 +INotificationRunning|C733E4AD-576E-11D0-B28C-00C04FD7CD22 +INotificationSink|C733E4A5-576E-11D0-B28C-00C04FD7CD22 +INotification|C733E4A3-576E-11D0-B28C-00C04FD7CD22 +INotifyAppStart|3A77CE00-6F74-4594-9399-C4578AA4A1B6 +INotifyUI|E5E8D401-1A37-4FBF-880C-826CC89516FD +IOCXViewDefs|FFF9A8FE-06CB-11D2-9791-50C320524153 +IOCXViewDef|FFF9A8ED-06CB-11D2-9791-50C320524153 +IOEAcctWizardOM|61A81654-75FB-11D2-8C0E-00C04FA31009 +IOEActions|626BAFEA-E5D6-11D1-B1DD-006097D503D9 +IOECriteria|626BAFE8-E5D6-11D1-B1DD-006097D503D9 +IOEEnumRules|626BAFE2-E5D6-11D1-B1DD-006097D503D9 +IOEExecRules|626BAFE4-E5D6-11D1-B1DD-006097D503D9 +IOEFolderCollection|06BE7320-EF34-11D1-ACD8-00C04FA31009 +IOEFolder|06BE7321-EF34-11D1-ACD8-00C04FA31009 +IOEJunkFilter|2F97B130-2266-11D2-B1F2-006097D503D9 +IOEMessageCollection|06BE731F-EF34-11D1-ACD8-00C04FA31009 +IOEMessageList|DE89B951-A597-11D1-9E46-006097D50408 +IOEMessage|06BE731E-EF34-11D1-ACD8-00C04FA31009 +IOEMsgList|7DFA86B2-F4CC-11D1-ACE1-00C04FA31009 +IOERulesManager|626BAFE0-E5D6-11D1-B1DD-006097D503D9 +IOERule|626BAFE6-E5D6-11D1-B1DD-006097D503D9 +IOESession|06BE7322-EF34-11D1-ACD8-00C04FA31009 +IOInetAdvisor|79EACBE8-BAF9-11CE-8C82-00AA004BA90B +IOInetAgent|79EACBE7-BAF9-11CE-8C82-00AA004BA90B +IOInetDestination|79EACBEA-BAF9-11CE-8C82-00AA004BA90B +IOInetItemFilter|79EACBE9-BAF9-11CE-8C82-00AA004BA90B +IOInetItemSink|79EACBE5-BAF9-11CE-8C82-00AA004BA90B +IOInetItem|79EACBE1-BAF9-11CE-8C82-00AA004BA90B +IOSInfoService|34E5BD25-DF15-405B-9D92-AB74AD0DC121 +IObCommunicationManager2|B9B3DB14-BD64-11D2-9D65-00C04F7F8935 +IObCommunicationManager|B9B3DB10-BD64-11D2-9D65-00C04F7F8935 +IObShellMainPane|2DD760C5-BB27-11D2-9D62-00C04F7F8935 +IObWebBrowser|86E23621-B8BC-11D2-9D5F-00C04F7F8935 +IObjPropBuilder|34D60A60-1D02-11D3-8C81-0090270D48D1 +IObjectManager|D51351DF-6394-4236-9783-65ED05631068 +IObjectModelHost|BDA4B9D3-0872-11D2-9791-50C320524153 +IObjectModel|BDA4B9D4-0872-11D2-9791-50C320524153 +IObjectWithQuerySource|B3DCB623-4280-4EB1-84B3-8D07E84F299A +IObjectWithRegistryKey|5747C63F-1DE8-423F-980F-00CB07F4C45B +IObjectsNotifications|83375A19-A098-42CF-9206-EE36FE48C637 +IObjectsPrivate|412246E8-01A6-4F9B-AEB7-5CB907CBA17F +IObjects|E8F1FBD5-4E44-4C26-B3D2-2C1C6999D611 +IOleCvt|65303442-AD66-11D1-9D65-00C04FC30DF6 +IOleInstall|C3701883-B39B-11D1-9D68-00C04FC30DF6 +IOpaqueDataInfo|000001A9-0000-0000-C000-000000000046 +IOperationCancel|F4DA2F80-07A0-11D2-AAB3-006097D474C4 +IOpsProfileSimple|7DD1362C-28B6-11D2-BCA7-00C04FD929DB +IOptionArray|22B6D492-0F88-11D1-BA19-00C04FD912D0 +IOptionBucket|EC320F21-4B33-11D1-AA10-006097D474C4 +IOutScreen|00EC6260-7D54-11D0-9E9E-585873000000 +IOutlookExpress|3338DF6A-4660-11D1-8A8D-00C04FB951F3 +IOverlappedCompletion|521A28F0-E40B-11CE-B2C9-00AA00680937 +IOverlappedStream|49384070-E40A-11CE-B2C9-00AA00680937 +IOverlapped|8291B2FD-AC2D-11D3-BBFF-00C04FC2D5D5 +IOverlayCallback|84440B2B-931C-4183-BF8B-B98BC09FD2E9 +IOverrideTargetContext|000001BA-0000-0000-C000-000000000046 +IPAControl|000001D2-0000-0000-C000-000000000046 +IPCHAccessControlEntry|833E4133-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHAccessControlList|833E4132-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHActiveScriptSite|833E4282-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHActiveScript|833E4281-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHBehaviors_Common|FC7D9100-3F9E-11D3-93C0-00C04F72DAF7 +IPCHBehaviors_Context|FC7D9108-3F9E-11D3-93C0-00C04F72DAF7 +IPCHBehaviors_State|FC7D9110-3F9E-11D3-93C0-00C04F72DAF7 +IPCHBehaviors_SubSite|FC7D9101-3F9E-11D3-93C0-00C04F72DAF7 +IPCHBehaviors_TreeNode|FC7D9103-3F9E-11D3-93C0-00C04F72DAF7 +IPCHBehaviors_Tree|FC7D9102-3F9E-11D3-93C0-00C04F72DAF7 +IPCHCollection|833E4100-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHConnectionCheck|FC7D9E71-3F9E-11D3-93C0-00C04F72DAF7 +IPCHConnectivity|FC7D9E70-3F9E-11D3-93C0-00C04F72DAF7 +IPCHContextMenu|FC7D9E40-3F9E-11D3-93C0-00C04F72DAF7 +IPCHDBCollection|833E4F01-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHDBColumn|833E4F02-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHDBDatabase|833E4F05-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHDBIndex|833E4F03-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHDBSession|833E4F06-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHDBTable|833E4F04-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHEvent|FC7D9E12-3F9E-11D3-93C0-00C04F72DAF7 +IPCHFavorites|FC7D9E31-3F9E-11D3-93C0-00C04F72DAF7 +IPCHHelpCenterExternal|FC7D9E11-3F9E-11D3-93C0-00C04F72DAF7 +IPCHHelpHost|BF72E210-FA10-4BB5-A348-269D7615A520 +IPCHHelpSessionItem|FC7D9E21-3F9E-11D3-93C0-00C04F72DAF7 +IPCHHelpSession|FC7D9E20-3F9E-11D3-93C0-00C04F72DAF7 +IPCHHelpViewerWrapper|FC7D9E16-3F9E-11D3-93C0-00C04F72DAF7 +IPCHOptions|FC7D9E32-3F9E-11D3-93C0-00C04F72DAF7 +IPCHParsedURL|FC7D9E81-3F9E-11D3-93C0-00C04F72DAF7 +IPCHPrintEngine|FC7D9E50-3F9E-11D3-93C0-00C04F72DAF7 +IPCHProgressBar|FC7D9E1A-3F9E-11D3-93C0-00C04F72DAF7 +IPCHQueryResult|833E4110-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHRemoteHelpContents|833E4201-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHSEManagerInternal|833E4163-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHSEManager|833E4160-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHSEParamItem|74932280-7AB6-4670-9704-128DEF4932EC +IPCHSEResultItem|833E4162-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHSEWrapperInternal|833E4164-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHSEWrapperItem|833E4161-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHScriptableStream|FC7D9E13-3F9E-11D3-93C0-00C04F72DAF7 +IPCHSecurityDescriptor|833E4131-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHSecurity|833E4130-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHService|833E4200-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHSetOfHelpTopics|833E4112-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHSlaveProcess|833E4280-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHTaxonomyDatabase|833E4111-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHTextHelpers|FC7D9E80-3F9E-11D3-93C0-00C04F72DAF7 +IPCHToolBar|FC7D9E18-3F9E-11D3-93C0-00C04F72DAF7 +IPCHUpdate|833E4071-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHUserSettings2|FC7D9E30-3F9E-11D3-93C0-00C04F72DAF7 +IPCHUserSettings|833E4108-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHUtility|833E4101-AFF7-4AC3-AAC2-9F24C1457BCE +IPCHVersionItem|833E4070-AFF7-4AC3-AAC2-9F24C1457BCE +IPODProtocol|B8973FBC-6043-4AF6-BB93-798BF63AF434 +IPOP3Callback|0DF2C7E3-3435-11D0-81D0-00C04FD85AB4 +IPOP3Transport|0DF2C7E4-3435-11D0-81D0-00C04FD85AB4 +IPPMError|1EFE33B1-2B86-11D0-9CA2-00A0C9081C19 +IPPMNotification|1EFE33B4-2B86-11D0-9CA2-00A0C9081C19 +IPPServerClass|23D1AE2F-8023-11D3-8D47-00C04F949D33 +IPStore|5A6F1EC0-2DB1-11D0-8C39-00C04FD9126B +IPVRIOCountersReader|1970A7D6-5029-4306-B4FE-AD1876CAD0FF +IPanic|3A1AAF00-BDD5-456B-9E69-9F02F06FDF76 +IParticipant|7009012B-F11E-11D1-B55E-00C04FB91A25 +IPartitionLookup|000001F8-0000-0000-C000-000000000046 +IPartitionProperty|000001F2-0000-0000-C000-000000000046 +IPassportAdminEx|876181A0-3B05-11D3-9ACD-0080C712D19C +IPassportAdmin|A0082CF5-AFF5-11D2-95E3-00C04F8E7A70 +IPassportClientServices|B30F7305-5967-45D1-B7BC-D6EB7163D770 +IPassportCrypt|41651BF9-A5C8-11D2-95DF-00C04F8E7A70 +IPassportFactory|5602E147-27F6-11D3-94DD-00C04F72DC08 +IPassportFastAuth2|FB41A7D8-3739-4468-BDF1-E5B4B2EAEB4B +IPassportFastAuth|74EB2513-E239-11D2-95E9-00C04F8E7A70 +IPassportLookupTable|9B49C3DE-55B2-11D3-9508-00C04F72DC08 +IPassportManager2|8CA48D6A-0B51-4F7A-9475-B0A8B59C3999 +IPassportManager3|1451151F-90A0-491B-B8E1-81A13767ED98 +IPassportManager|41651BEF-A5C8-11D2-95DF-00C04F8E7A70 +IPassportManager|A5064423-D541-11D4-9523-00B0D022CA64 +IPassportProfile|41651BF3-A5C8-11D2-95DF-00C04F8E7A70 +IPassportServiceManager|4B0CAF89-790C-4B8F-AD31-E66FD5A172D5 +IPassportService|6969D727-7FF7-4C51-8790-86551AF1B4D0 +IPassportTicket2|5992F4F4-05CB-4944-A426-1E1870266F85 +IPassportTicket|41651BF1-A5C8-11D2-95DF-00C04F8E7A70 +IPassportWizard|A09DB586-9180-41AC-9114-460A7F362B76 +IPasswordMigration|EB134929-B2B4-4060-94A7-12BC54B278E1 +IPassword|3D3664FB-A3FB-41F3-9D54-7F99D2FF152F +IPerfBlock|39FD6808-96BB-11D2-B346-00105A1469B7 +IPerfCounter|FC5B80C4-A4DC-11D2-B348-00105A1469B7 +IPerfInstance|FC5B80C2-A4DC-11D2-B348-00105A1469B7 +IPerfObject|FC5B80C3-A4DC-11D2-B348-00105A1469B7 +IPerfService|111FFCBA-96B7-11D2-B346-00105A1469B7 +IPerformMigrationTask|C0B2248C-B7CA-49F3-9383-9C6AE32F0846 +IPerf|91062994-A3E7-101A-B4AC-08002B30612C +IPermissionChecker|1BE73E20-B843-11D0-8B40-00C0F00AE35A +IPersistFolder|000214EA-0000-0000-0000-C00000000046 +IPersistMime|DE4AD8DA-555F-11D1-8DD0-00C04FB951F9 +IPersistNetConnection|FAEDCF59-31FE-11D1-AAD2-00805FC1270E +IPersistString2|3C44BA76-DE0E-4049-B6E4-6B31A5262707 +IPersistTextStream|56223FE3-D397-11CF-A42E-00AA00C00940 +IPersonExplorerDetailsView|55AB4160-99B3-11D1-B67B-00C04FA3C554 +IPersonExplorerTreeView|55AB415D-99B3-11D1-B67B-00C04FA3C554 +IPersonExplorer|239A3C5F-8D41-11D1-B675-00C04FA3C554 +IPgCntObj|EF88CA70-B840-11D0-8B40-00C0F00AE35A +IPhotoCenterEdit|77FB64A4-446A-11D3-822E-00C04F609487 +IPhotoCenterHelp|193D5D9D-00E4-4D61-88D8-46119920CBB5 +IPipelineManager|6BC096BE-0CE6-11D1-BAAE-00C04FC2E20D +IPipeline|6BC096AD-0CE6-11D1-BAAE-00C04FC2E20D +IPlaylistInfo|BB24BBE2-1EEC-422B-A397-EDBC31FB3A56 +IPlugInInfo|D46EF928-5ADD-43A5-B4C6-C2948AFEA768 +IPluggableSchema|D6790DA0-D57B-11D1-8F61-006097E48F10 +IPoint|BEEDC08A-EBD2-11D0-A78F-00805F0D2083 +IPolicyAction|6BC098A3-0CE6-11D1-BAAE-00C04FC2E20D +IPolicyAsync|000001CD-0000-0000-C000-000000000046 +IPolicyMaker|000001C4-0000-0000-C000-000000000046 +IPolicySet|000001C3-0000-0000-C000-000000000046 +IPolicy|000001C2-0000-0000-C000-000000000046 +IPop3AdminService|6FC75F70-C833-11D0-BC02-00C04FC3092D +IPop3AdminSessions|6FC75F72-C833-11D0-BC02-00C04FC3092D +IPop3AdminVirtualDirectory|6FC75F74-C833-11D0-BC02-00C04FC3092D +IPop3AdminVirtualServer|6FC75F71-C833-11D0-BC02-00C04FC3092D +IPop3Admin|6FC75F6F-C833-11D0-BC02-00C04FC3092D +IPop3ServerBindings|7F2EE514-E554-11D0-ACA4-0000860F614C +IPop3ServerBinding|7F2EE512-E554-11D0-ACA4-0000860F614C +IPop3UidlStore|E883FC77-EC08-11D1-9A53-00C04FA309D4 +IPower|61CECB3A-68D3-11D0-8AE3-00C0F00AE35A +IPreferredDevices|CEA8898C-9CA2-4023-90A0-B5FE9604776E +IPreview2|0AE0A2B1-3A34-11D3-9626-00C04F8EEC8C +IPreview3|497431AD-5481-4DF7-AE5D-130D9CD50DB3 +IPreviewSystemMetrics|FC0A77D2-2ADF-4EDE-A885-523A3A74A145 +IPreview|50F16B25-467E-11D1-8271-00C04FC3183B +IPrivActivationContextInfo|000001AE-0000-0000-C000-000000000046 +IPrivActivationPropertiesIn|000001B5-0000-0000-C000-000000000046 +IPrivActivationPropertiesOut|000001B0-0000-0000-C000-000000000046 +IPrivSyncMgrSynchronizeInvoke|6295DF2E-35EE-11D1-8707-00C04FD93327 +IPrivacyServices|3050F84B-98B5-11CF-BB82-00AA00BDCE0B +IPrivateIdentityManager2|15E84C92-2E4D-11D3-9C92-00104B35E7F9 +IPrivateIdentityManager|A9AE6C93-1D1B-11D2-B21A-00C04FA357FA +IPrivateInit|68CFA02A-41C6-4F2F-9BA4-0A745E04EFE9 +IProcessServerInfo|000001EE-0000-0000-C000-000000000046 +IProgSink|3050F371-98B5-11CF-BB82-00AA00BDCE0B +IProgView|E84219C9-C6CA-42C9-BFAE-521D1B23AF96 +IPrograms|8786250A-8EF8-4A51-B80A-643CCF835DB6 +IProgram|FC91783E-5703-4319-A5B1-19555059559C +IProgressListener|229F78AE-6618-4DF3-95D2-FC26C9F97428 +IProjMgr|A77E6E1A-7D16-4B05-8436-D2A82921165F +IPromptDb|58FE62DE-9BBB-4538-B2BB-FA9766FF2F84 +IPromptEntry|7BA9B129-7877-4398-86A3-049C1D410F58 +IPropFindMultiResponse|0DEE87DE-0547-11D2-A894-0000F8084F96 +IPropFindRequest|391B226C-D032-11D2-B311-00105A9974A0 +IPropFindRequest|5CFC6308-0544-11D2-A894-0000F8084F96 +IPropFindResponse|8A523716-0548-11D2-A894-0000F8084F96 +IPropPageExt|61955412-FE5C-4334-8E92-4E462AB21BB8 +IPropPageExt|83E05E3D-CF47-4146-BE16-5E876584119D +IPropPageExt|C1E514B4-AD1D-4F68-B8BD-F4205DBC6708 +IPropPatchRequest|9A508200-3EA3-4725-84EE-8A326976D483 +IPropPatchRequest|AB8B8D2A-227F-11D2-A8B5-0000F8084F96 +IPropStorageDispatch|A2CEF640-8F9E-11D2-B083-00C04FA36145 +IPropertyBagEx|20011801-5DE6-11D1-8E38-00C04FB9386D +IPropertyBucket|EC320F20-4B33-11D1-AA10-006097D474C4 +IPropertyCollection|802D7470-E767-11D0-9E5D-00C04FB94FEF +IPropertyContainer|FD465484-1384-11D0-ABBD-0020AFDFD10A +IPropertyMap|C733E4A2-576E-11D0-B28C-00C04FD7CD22 +IPropertySetter|AE9472BD-B0C3-11D2-8D24-00A0C9441E20 +IPropertyStorageServer|AF4AE0D0-A37F-11CF-8D73-00AA004CD01A +IProperty|5C3CD722-E6C3-11D0-9E5D-00C04FB94FEF +IProvideRuntimeText|56223FE1-D397-11CF-A42E-00AA00C00940 +IPulsateBehavior|A91B375E-38A2-11D2-BB80-00A0C999C4C1 +IQualProp|1BD0ECB0-F8E2-11CE-AAC6-0020AF0B99A3 +IQualityControl|6BC096AB-0CE6-11D1-BAAE-00C04FC2E20D +IQueryInfo|00021500-0000-0000-0000-C00000000046 +IQueryPropertyFlags|85DCA855-9B96-476D-8F35-7AF1E733CAAE +IQuerySource|C7478486-7583-49E7-A6C2-FAF8F02BC30E +IQueueAdminAction|486886B4-6542-4ABE-8DE5-1A35E8A83A6C +IQueueAdminLink|D81698CA-2FD1-11D3-BFD1-00C04FA3490A +IQueueAdminMessageFilter|34E2DCC4-C91A-11D2-A6B1-00C04FA3490A +IQueueAdminQueue|34E2DCC6-C91A-11D2-A6B1-00C04FA3490A +IRARegSetting|2464AA8D-7099-4C22-925C-81A4EB1FCFFE +IRASCallback|36D88911-3CD6-11D0-81DF-00C04FD85AB4 +IRASTransport|8A950001-3CCF-11D0-81DF-00C04FD85AB4 +IRASettingProperty|08C8B592-FDD0-423C-9FD2-7D8C055EC5B3 +IRASetting|9E57A474-0A04-4B89-9D27-1981B26C970D +IRCMLCSS|F5DBF38A-14DE-4F8B-8750-BABA8846E7F2 +IRCMLContainer|E0868F2A-BC98-4B46-9261-31A168904804 +IRCMLControl|B943DDF7-21A7-42CB-B696-345AEBC10910 +IRCMLHelp|B31FDC6A-9FB2-404E-8762-CC267A95A424 +IRCMLNode|F825CAF1-DE40-4FCC-B965-933076D7A1C5 +IRCMLResize|4CB1AC90-853C-4CE2-B013-26D0EE675F78 +IRDSThreadBridge|35B9A4B1-7CA6-4AEC-8762-1B590056C05D +IRGBColorTable|3050F2F5-98B5-11CF-BB82-00AA00BDCE0B +IRTCAddress|C4199108-D022-40BE-BD8C-F0D10F869082 +IRTCAudioConfigure|F5108E83-E088-4BA5-BC59-C4BFE831FE59 +IRTCContactList|0BB7B3A0-7EFE-4EB0-B666-912CF050C408 +IRTCContact|3F679074-5EF5-4831-9410-6A4A6B65A21C +IRTCCtlFrameSupport|BEBBC30F-A3A4-440B-AB96-0A409518393E +IRTCCtlNotify|93357902-3F99-4E18-97BD-D23BC2059CE6 +IRTCCtl|5695B060-0E59-493A-80DC-DEE2D7F2A69F +IRTCEnumAddresses|41C819E3-7186-4B7E-9CAF-513B579D06B1 +IRTCEnumContacts|29EF6C3B-2DAB-44CA-ACA9-93A53B7E8572 +IRTCEnumPhoneNumbers|FC4FDDEB-49B5-40C9-B990-FC0C0F155C7C +IRTCFrame|C65062B7-B5D8-4082-A4ED-6D4F77046C41 +IRTCMediaManage|F09F9AE7-6712-41A5-B959-4CB4D602A9DC +IRTCMedia|B5C6848F-E85C-49E9-BEE1-39F096FBFCC5 +IRTCNmCallControl|4996DEFF-FEC4-4E68-B793-790E8CF53DBC +IRTCNmManagerControl|BAB76C36-5293-4324-8EB2-7D0EE9F4D947 +IRTCPhoneNumber|5A06DF7C-7F10-4CB3-A8B4-37B60F60FB1F +IRTCProvStore|1E6AA071-A5A4-4364-A576-6513B1D18C85 +IRTCQualityControl|3FD4AB8A-1359-425D-873A-4B6AB8D55496 +IRTCShare|87E403C2-6DAA-4C76-A3CD-FB6E344B86B8 +IRTCStreamQualityControl|C59D9F38-3055-4CF9-9FB4-D01CCA2341B3 +IRTCStream|33CEF9E4-0792-49EA-B141-D0680CAC9D67 +IRTCTerminalManage|BC05BEBE-2B0D-4325-9182-E950F406518C +IRTCTerminalPriv|5CD50568-42AE-4486-B84E-F5E48D860920 +IRTCTerminal|C914C1AE-CE2D-4916-B838-F6341E45CC0D +IRTCTuningManage|6CAE2A34-E12B-4102-B0B7-578C13C2E26D +IRTCVideoConfigure|8F31BDCB-1B34-4724-AB02-9617A0CBC477 +IRTPFormat|ED809094-2320-4833-AEAE-08D1474F1980 +IRTPRecvSink|FCEDC784-AFDC-11D1-AA91-00C04FC9B202 +IRTPRecv|76C7F79C-AFDC-11D1-AA91-00C04FC9B202 +IRTPSend|44F9B073-641C-11D1-AA67-00C04FC9B202 +IRTPSession|26FCF000-61D1-11D1-AA66-00C04FC9B202 +IRTPSink|2FE04E9C-8917-11D1-AA78-00C04FC9B202 +IRTP|06CE0C39-8917-11D1-AA78-00C04FC9B202 +IRadioButton|3050F69B-98B5-11CF-BB82-00AA00BDCE0B +IRangeList|8C438160-4EF6-11D0-874F-00AA00530EE9 +IRatingNotification|639447BD-B2D3-44B9-9FB0-510F23CB45E4 +IRebootComputer|587A1E44-7E5E-424F-BEEB-B195B718BE50 +IRecalcEngine|3050F496-98B5-11CF-BB82-00AA00BDCE0B +IRecalcHostDebug|3050F5F7-98B5-11CF-BB82-00AA00BDCE0B +IRecalcHost|3050F497-98B5-11CF-BB82-00AA00BDCE0B +IRecalcProperty|3050F5D6-98B5-11CF-BB82-00AA00BDCE0B +IReceiveTest|2112DF3C-6A1C-43C3-91C6-1CDDC0298083 +IRecipientDomainList|05BBDD90-5D5A-11D1-B7A7-0080C731C893 +IRecipients|5049BF87-9BA1-4B8E-8FEC-5AD21D9C63AC +IRecipients|A694C896-FC38-4C34-AE61-3B1A95984C14 +IRecipient|6A5ED548-6DFD-4C7B-B377-526899D148B1 +IRecipient|B4B23806-4710-11D1-B78D-0080C731C893 +IRecvRequest|6BC096BD-0CE6-11D1-BAAE-00C04FC2E20D +IRefDial|1E794A09-86F4-11D1-ADD8-0000F87734F0 +IRegExp|3F4DACA0-160D-11D2-A8E9-00104B365C9F +IRegInfo|B6994FB6-1DB6-11D2-97A3-E22420524153 +IRegWizCtrl|50E5E3CF-C07E-11D0-B9FD-00A0249F6B00 +IRegisterVirusScanEngine|0825E060-B961-11CF-AAFA-00AA00B6015C +IRegistrar|44EC053B-400F-11D0-9DCD-00A0C90391D3 +IRegistryA|C733E4B1-576E-11D0-B28C-00C04FD7CD22 +IRegistryW|C733E4B0-576E-11D0-B28C-00C04FD7CD22 +IRemUnknownN|0000013C-0000-0000-C000-000000000046 +IRemUnknown|00000131-0000-0000-C000-000000000046 +IRemoteDebugApplicationEx|51973C01-CB0C-11D0-B5C9-00A0244A0E7A +IRemoteDesktopHelpSessionEnum|676638A3-E76D-4C25-98D4-AA6F7D303B6F +IRemoteDesktopHelpSessionMgr|8556D72C-2854-447D-A098-39CDBFCDB832 +IRemoteDesktopHelpSession|19E62A24-95D2-483A-AEB6-6FA92914DF96 +IRemoteMTScriptProxy|854C3181-C854-4A77-B189-606859E4391B +IRemoteNetworkConfig|66A2DB1B-D706-11D0-A37B-00C04FC9DA04 +IRemotePropertySheetManager|67B70691-8885-11D2-809C-6C67C0000000 +IRemoteProxyFactory|8628F27D-64A2-4ED6-906B-E6155314C16A +IRemoteQI|00000142-0000-0000-C000-000000000046 +IRemoteRouterConfig|66A2DB1A-D706-11D0-A37B-00C04FC9DA04 +IRemoteRouterRestart|66A2DB20-D706-11D0-A37B-00C04FC9DA04 +IRemoteStorageHint|BD010A01-000B-11D0-D0DD-00A0C9190459 +IRemoteStorage|C48AD3C9-00D4-11D3-8FD1-0040339FD97B +IRemoteStream|BD010A04-000B-11D0-D0DD-00A0C9190459 +IRemoteTCPIPChangeNotify|66A2DB1E-D706-11D0-A37B-00C04FC9DA04 +IRenameComputer|F250A335-6C51-424F-B9FA-6F07E092FF4A +IRenamedFolders|92C71C4E-CAC8-11D3-B9FB-00C04F79E399 +IRenderEngine|6BEE3A81-66C9-11D2-918F-00C0DF10D434 +IReplaceClassInfo|000001FB-0000-0000-C000-000000000046 +IReplicaSet|6DC4917C-7A5F-48F0-80CC-6E730B8423BF +IReplicationUtil|98315903-7BE5-11D2-ADC1-00A02463D6E7 +IReportGeneration|146D20A6-2093-4A58-97EC-E4D092124410 +IRequestHandler|6BC096AA-0CE6-11D1-BAAE-00C04FC2E20D +IRequestSource|6BC096A9-0CE6-11D1-BAAE-00C04FC2E20D +IRequestState|6BC096BA-0CE6-11D1-BAAE-00C04FC2E20D +IRequest|6BC096A7-0CE6-11D1-BAAE-00C04FC2E20D +IRequest|94CBB886-D25B-49E3-848B-DA5E54967502 +IResStringSrv|DAA1CB6A-7224-4760-843B-A5D1981CD49B +IResize|4ADA63A0-72D5-11D2-952A-0060081840BC +IResourceGates|7A0DDD93-7198-4E15-BBD7-427C77B6907A +IResourceMap|9C50A798-5D90-4130-83DA-38DA83456711 +IResponse|2ACF58DF-8009-4499-B399-0800075A5C8A +IRestorePoint|1159A00E-2862-11D3-B9CF-00C04F79E399 +IRestoreShell|9341D916-7CDF-11D3-B9E5-00C04F79E399 +IResultPrshtActions|12DD72EE-A6E5-11D0-9A84-00C04FD8DBF7 +IResultViews|87BC1802-C8FB-11D1-B44A-30F4BC000000 +IResultView|87BC1805-C8FB-11D1-B44A-30F4BC000000 +IRipple|6DA4A05E-8E9E-11D1-904E-00C04FD9189D +IRmsCartridge|534F26CB-4F8A-4FEE-8D7E-5C35A0A0CC38 +IRmsChangerElement|FE37FB13-3729-11D0-8CF4-00A0C9190459 +IRmsClient|FE37FB16-3729-11D0-8CF4-00A0C9190459 +IRmsComObject|FE37FB12-3729-11D0-8CF4-00A0C9190459 +IRmsDevice|FE37FB14-3729-11D0-8CF4-00A0C9190459 +IRmsDriveClass|FE37FB03-3729-11D0-8CF4-00A0C9190459 +IRmsDrive|AA46E0CE-F1F8-11D2-A81E-00C04FB960ED +IRmsIEPort|FE37FB08-3729-11D0-8CF4-00A0C9190459 +IRmsLibrary|FE37FB02-3729-11D0-8CF4-00A0C9190459 +IRmsMediaSet|BC9E7125-0976-4773-9E43-72047FED478C +IRmsMediumChanger|FE37FB07-3729-11D0-8CF4-00A0C9190459 +IRmsMoveMedia|FE37FB18-3729-11D0-8CF4-00A0C9190459 +IRmsNTMS|65DF3456-561A-4ADE-A0F4-2DFFF82E4A56 +IRmsPartition|FE37FB11-3729-11D0-8CF4-00A0C9190459 +IRmsRequest|FE37FB10-3729-11D0-8CF4-00A0C9190459 +IRmsServer|52487E77-286D-4F42-BF58-3254708FA510 +IRmsSinkEveryEvent|FE37FB20-3729-11D0-8CF4-00A0C9190459 +IRmsStorageInfo|FE37FB15-3729-11D0-8CF4-00A0C9190459 +IRmsStorageSlot|FE37FB06-3729-11D0-8CF4-00A0C9190459 +IRouterAdminAccess|66A2DB1F-D706-11D0-A37B-00C04FC9DA04 +IRouterInfo|66A2DB02-D706-11D0-A37B-00C04FC9DA04 +IRouterRefreshAccess|66A2DB1C-D706-11D0-A37B-00C04FC9DA04 +IRouterRefreshModify|66A2DB1D-D706-11D0-A37B-00C04FC9DA04 +IRouterRefresh|66A2DB15-D706-11D0-A37B-00C04FC9DA04 +IRoutingSource|2278842E-3375-11D1-B9E1-00C04FC2F510 +IRpcCall|000001C5-0000-0000-C000-000000000046 +IRpcTest|00000137-0001-0008-C000-000000000046 +IRpcTypes|00000135-0001-0008-C000-000000000046 +IRstrProgress|CD7874B8-7D3A-11D3-B9E5-00C04F79E399 +IRtrAdviseSink|66A2DB14-D706-11D0-A37B-00C04FC9DA04 +IRtrMgrInfo|66A2DB04-D706-11D0-A37B-00C04FC9DA04 +IRtrMgrInterfaceInfo|66A2DB0A-D706-11D0-A37B-00C04FC9DA04 +IRtrMgrProtocolInfo|66A2DB06-D706-11D0-A37B-00C04FC9DA04 +IRtrMgrProtocolInterfaceInfo|66A2DB0C-D706-11D0-A37B-00C04FC9DA04 +ISAFCabinet|833E41A0-AFF7-4AC3-AAC2-9F24C1457BCE +ISAFChannelNotifyIncident|833E41B0-AFF7-4AC3-AAC2-9F24C1457BCE +ISAFChannel|833E4181-AFF7-4AC3-AAC2-9F24C1457BCE +ISAFDataCollectionReport|833E4192-AFF7-4AC3-AAC2-9F24C1457BCE +ISAFDataCollection|833E4190-AFF7-4AC3-AAC2-9F24C1457BCE +ISAFEncrypt|833E41A8-AFF7-4AC3-AAC2-9F24C1457BCE +ISAFIncidentItem|833E4182-AFF7-4AC3-AAC2-9F24C1457BCE +ISAFIncident|833E4183-AFF7-4AC3-AAC2-9F24C1457BCE +ISAFIntercomClient|FC7D9E60-3F9E-11D3-93C0-00C04F72DAF7 +ISAFIntercomServer|FC7D9E62-3F9E-11D3-93C0-00C04F72DAF7 +ISAFReg|833E4180-AFF7-4AC3-AAC2-9F24C1457BCE +ISAFRemoteConnectionData|833E41AB-AFF7-4AC3-AAC2-9F24C1457BCE +ISAFRemoteDesktopCallback|A39442C2-10A5-4805-BE54-5E6BA334DC29 +ISAFRemoteDesktopChannelMgr|8E6E0954-33CE-4945-ACF7-6728D23B2067 +ISAFRemoteDesktopClientHost|69DE5BF3-5EB9-4158-81DA-6FD662BBDDDD +ISAFRemoteDesktopClient|8AA5F108-2918-435C-88AA-DE0AFEE51440 +ISAFRemoteDesktopConnection|833E41AC-AFF7-4AC3-AAC2-9F24C1457BCE +ISAFRemoteDesktopDataChannel|64976FAE-B108-4095-8E59-5874E00E562A +ISAFRemoteDesktopManager|26934FF8-F0B6-4E10-8661-23D47F4C69C5 +ISAFRemoteDesktopServerHost|C9CCDEB3-A3DD-4673-B495-C1C89494D90E +ISAFRemoteDesktopSession|9D8C82C9-A89F-42C5-8A52-FE2A77B00E82 +ISAFRemoteDesktopTestExtension|5C7A32EF-1C77-4F35-8FBA-729DD2DE7222 +ISAFSession|833E41AA-AFF7-4AC3-AAC2-9F24C1457BCE +ISAFUser|833E41A9-AFF7-4AC3-AAC2-9F24C1457BCE +ISCMLocalActivator|00000136-0000-0000-C000-000000000046 +ISCMProcessControl|7629798C-F1E6-4EF0-B521-DC466FDED209 +ISCrdEnr|80CB7886-20DE-11D2-8D5C-00C04FC29D45 +ISDPMedia|E77E1734-BEFE-42FC-8FD2-2B8F00E72981 +ISDPParser|D94587A2-E0BF-41BA-A8B3-5B2E5AF7FA5E +ISDPSession|7EC4AD19-A9D5-421A-90E0-A6A1AE2228E0 +ISEOBindingConverter|EE4E64D0-31F1-11D0-A9D0-00AA00685C74 +ISEOBindingRuleEngine|F2D1DAF0-2236-11D0-A9CE-00AA00685C74 +ISEODictionaryItem|16D63630-83AE-11D0-A9E3-00AA00685C74 +ISEODictionary|D8177B40-7BAC-11D0-A9E0-00AA00685C74 +ISEODispatcher|8CA89880-31F1-11D0-A9D0-00AA00685C74 +ISEOEventSink|1CAB4C20-94F4-11D0-A9E8-00AA00685C74 +ISEOInitObject|9BB6AAB0-AF6D-11D0-8BD2-00C04FD42E37 +ISEOMessageFilter|D71F5D40-3375-11D0-A9D1-00AA00685C74 +ISEORegDictionary|347CACB0-2D1E-11D0-A9CF-00AA00685C74 +ISEORouter|2B6AC0F0-7E03-11D0-A9E0-00AA00685C74 +ISEOTConsoleUtil|6686C220-E844-11D0-AA10-00AA006BC80B +ISEOTMetaBaseChangeSinkDisp|D1556861-E0FA-11D0-AA0F-00AA006BC80B +ISEOTMetaBaseChangeSink|D1556860-E0FA-11D0-AA0F-00AA006BC80B +ISEOTMetaBaseChanges|B1D2D310-E0FB-11D0-AA0F-00AA006BC80B +ISFUCommon|CF913193-33AC-48F0-815D-D8157CA93E7A +ISHMClassFactory|EDC298C2-038D-11D4-8464-00C04F7A06E5 +ISIPBuddyManager|CCAFD7C7-F7AF-40CB-B981-D9A9E164843C +ISIPBuddy|6DA7E176-B1E7-4E7B-A6D9-E885DCF3DEAB +ISIPWatcherManager|7F8CFC57-A92D-4BCF-BE02-83EA11DBA34F +ISIPWatcher|E9360BEA-5268-4CB9-B28E-3736A520FAF5 +ISMTPCallback|1F636C02-364E-11D0-81D3-00C04FD85AB4 +ISMTPCategorizerCompletion|B23C35B9-9219-11D2-9E17-00C04FA322BA +ISMTPCategorizerDLCompletion|B23C35BA-9219-11D2-9E17-00C04FA322BA +ISMTPCategorizer|B23C35B8-9219-11D2-9E17-00C04FA322BA +ISMTPConnection|838258A5-4EEB-11D1-B2CD-00C04FC32984 +ISMTPServerAsync|F8FAA643-6DD8-461B-AED1-D64B306E870F +ISMTPServerEx|52AE6373-90F6-470C-9D38-526E9060B07D +ISMTPServerGetAuxDomainInfoFlags|735E9929-1885-4736-8D07-492F962ECEB9 +ISMTPServerInternal|57EE6C15-1870-11D2-A689-00C04FA3490A +ISMTPServer|22625594-D822-11D1-9FF7-00C04FA37348 +ISMTPStoreDriver|EE51588C-D64A-11D1-9FF7-00C04FA37348 +ISMTPTransport2|0DF2C7EC-3435-11D0-81D0-00C04FD85AB4 +ISMTPTransport|0DF2C7E2-3435-11D0-81D0-00C04FD85AB4 +ISMimePolicyCheckAccess|5073B6B6-AA66-11D2-9841-0060B0EC2DF3 +ISMimePolicyFullEdit|5073B6B5-AA66-11D2-9841-0060B0EC2DF3 +ISMimePolicyLabelInfo|5073B6B7-AA66-11D2-9841-0060B0EC2DF3 +ISMimePolicySimpleEdit|5073B6B4-AA66-11D2-9841-0060B0EC2DF3 +ISMimePolicyValidateSend|5073B6B8-AA66-11D2-9841-0060B0EC2DF3 +ISMofCompiler|161C3589-357C-4804-9D44-56C303FA4BDA +ISNMP|4F664F90-FF01-11D0-8AED-00C04FD7B597 +ISOAPRequest|AD194525-6E01-4BCA-929C-23C7383336AF +ISPFSNotify|3BB41711-9904-4362-9CC0-7378E5AE0EB0 +ISWbemInternalContext|61EA8DBC-37B8-11D2-8B3C-00600806D9B6 +ISWbemInternalObject|9AF56A1A-37C1-11D2-8B3C-00600806D9B6 +ISWbemInternalSecurity|CB0733BE-DB49-11D3-B38F-00105A1F473A +ISWbemInternalServices|67CB17B2-DB43-11D3-B38F-00105A1F473A +ISWbemPrivateSinkLocator|8D24A115-21AE-4F0B-89E4-95BD08BE3EBB +ISWbemPrivateSink|073C58A9-3793-11D2-A1CE-00C04FB6C223 +ISakNodeProp|C4F67F03-119C-11D0-8070-00A0C905F098 +ISakNode|C4F67F02-119C-11D0-8070-00A0C905F098 +ISakSnapAsk|4E769F52-5512-11D0-8F99-00A0C9190447 +ISakWizard|4E769F53-5512-11D0-8F99-00A0C9190447 +ISampleGrabberCB|0579154A-2B53-4994-B0D0-E773148EFF85 +ISampleGrabber|6B652FFF-11FE-4FCE-92AD-0266B5D7C78F +ISceClassObject|B7BDAEF5-FB63-4027-B329-1025275525C1 +ISceKeyChain|615567D6-5C02-4585-A79E-165F6BA247B6 +IScePathParser|AB1FF71D-FFF7-4162-818F-13D6E30C3110 +IScePersistMgr|91F0E463-9D96-48E6-9A3F-9EE37147AFBA +ISceQueryParser|F3DE3238-15BC-4E65-985A-DAC6A95BF902 +IScheduleEntries|E5FDD9C4-8E60-4BEB-BBC8-93BE39C75BAA +IScheduleEntry|6C46F789-2156-4AF0-97D7-38D99E2C9160 +IScheduleGroup|C733E4A6-576E-11D0-B28C-00C04FD7CD22 +ISchemaDoc|B1104680-42A2-4C84-8585-4B2E2AB86419 +ISchemes|F225C167-BAF3-4A97-9E01-48F88936C82E +IScmReplyInfo|000001B6-0000-0000-C000-000000000046 +IScmRequestInfo|000001AA-0000-0000-C000-000000000046 +IScopeAdm|3BC4F3A4-652A-11D1-B4D4-00C04FC2DB8D +IScopeItemDefs|FFF9A8F3-06CB-11D2-9791-50C320524153 +IScopeItemDef|FFF9A8E9-06CB-11D2-9791-50C320524153 +IScopeItems|9C415911-C8C1-11D1-B447-2A9646000000 +IScopeItem|87BC1800-C8FB-11D1-B44A-30F4BC000000 +IScopeNode|22812B18-F637-11D1-977E-CE9020524153 +IScopePaneItems|3ADE74B0-E7AC-11D1-B461-D23A1D000000 +IScopePaneItem|3ADE74B3-E7AC-11D1-B461-D23A1D000000 +IScreenResFixer|B80DF3D8-82DB-4E8D-8097-8C2C0E746470 +IScriptRuntime|7BF735BB-0798-11D5-B5F6-00005A990A0C +IScriptedProcessSink|854C3172-C854-4A77-B189-606859E4391B +IScriptedProcess|854C3171-C854-4A77-B189-606859E4391B +IScrollBar|3050F689-98B5-11CF-BB82-00AA00BDCE0B +ISdoClassInfo|EFF64A83-46C1-11D2-A8C2-00AA00A71DCA +ISdoDummy|B5741A11-96DD-11D1-BF3F-000000000000 +ISdoPropertyInfo|EFF64A84-46C1-11D2-A8C2-00AA00A71DCA +ISdoSchema|7ECBFDCF-4759-11D2-8EC9-00C04FC2F519 +ISdoService|7A968236-9D6D-11D1-BF5D-000000000000 +ISearchAssistantOC2|72423E8F-8011-11D2-BE79-00A0C9A83DA2 +ISearchAssistantOC3|72423E8F-8011-11D2-BE79-00A0C9A83DA3 +ISearchAssistantOC|72423E8F-8011-11D2-BE79-00A0C9A83DA1 +ISearchCommandExt|1D2EFD50-75CE-11D1-B75A-00A0C90564FE +ISearchCompanionInfo|DB5CEF35-BEC6-4762-A1BD-253F5BF67C72 +ISearches|47C922A2-3DD5-11D2-BF8B-00C04FB93661 +ISearch|BA9239A4-3DD5-11D2-BF8B-00C04FB93661 +ISecPlugIn|51F46B5F-AB4B-4A0D-89FE-62FB54A4B34D +ISecTranslator|6411EB69-223A-4017-A66C-8B1307661C17 +ISecurityTranslation|E7330F07-E140-43C3-A082-9DDE98CED9F4 +ISeeker|D1AD10D0-2030-11D3-95A7-00C04F4F5B7E +ISegDb|36A90590-3921-4C67-BAD2-CAD166E08B6D +ISegRec|952B2BC7-FAF6-4B14-84CD-2FA4F0156BC7 +ISelectFile|78A029DD-B561-4702-A7EF-0ECD12EEF7B1 +ISelectionObject2|3050F7FC-98B5-11CF-BB82-00AA00BDCE0B +ISendConsoleMessageApp|B1AFF7CF-0C49-11D1-BB12-00C04FC9A3A3 +ISerializableParent|000001B1-0000-0000-C000-000000000046 +ISerializable|000001B2-0000-0000-C000-000000000046 +IServerBindings|9FC9EFD1-A535-11D0-896F-00AA00A74BF2 +IServerBinding|9FC9EFD0-A535-11D0-896F-00AA00A74BF2 +IServerDispatcher|9EFDB61A-E476-11D1-AA67-00C04FA345F6 +IServerHandler|F4F569D0-593B-101A-B569-08002B2DBF7A +IServerLocationInfo|000001A4-0000-0000-C000-000000000046 +IServersListInfo|C54CEA94-E501-4F34-8704-F5881EA5CBF4 +IServiceAccountEnumeration|4AC4E39B-A2E8-4CA4-B54F-6BE9D8046C9B +IServicesSink|000001D3-0000-0000-C000-000000000046 +IServices|D3517044-B747-42C0-AFD5-31265ABA4977 +IService|02506D0A-A7F5-419D-94D2-ED26F0753654 +IService|59745450-F0F4-4B3F-B49E-55664E425CF6 +ISession|B1BA6A09-E7F5-4C7A-BEF8-B9D8BB0D2253 +ISetDetector|48E3EC70-2B25-11D3-8AE5-00A0C9AFE114 +ISetDevCtrlInterface|A47C85E0-DAA9-11CF-B484-00AA00C14A91 +ISetFolderEnumRestriction|76347B91-9846-4CE7-9A57-69B910D16123 +ISettingsComp|6E92F337-AF3E-11D2-A39B-00C04FB90546 +ISettings|A24104F5-46D0-4C0F-926D-665565908E91 +ISetting|22FF2143-D949-47ED-B912-AADE1E3B67F3 +ISetupClassEnum|0A44A994-AC8C-42FD-A292-26C9DE3F48E3 +ISetupClassInternal|770B9CA9-B48D-46E1-BB7A-1A943DEA4FE8 +ISetupClasses|4B824988-12A1-4BA2-A7E8-9E185ADDA0CC +ISetupClass|99A59A87-6117-4E85-94A1-DF6B5A3AE7F6 +ISharedAccessBeaconFinder|FAEDCF67-31FE-11D1-AAD2-00805FC1270E +ISharedAccessBeacon|FAEDCF6B-31FE-11D1-AAD2-00805FC1270E +ISharedAccessUpdate|7C037FD2-2B42-4A0F-B8A2-611D10E03117 +IShellAppManager|352EC2B8-8B9A-11D1-B8AE-006008059382 +IShellBrowserService|1307EE17-EA83-49EB-96B2-3A28E2D7048A +IShellBrowser|000214E2-0000-0000-0000-C00000000046 +IShellDetails|000214EC-0000-0000-0000-C00000000046 +IShellExecuteTarget|7C1B9250-9380-11D1-BE5E-0000F805CA57 +IShellExtInit|000214E8-0000-0000-0000-C00000000046 +IShellFolderNames|6CD8F9CC-DFE7-48F2-A60A-3831E26AF734 +IShellFolder|000214E6-0000-0000-0000-C00000000046 +IShellItemArray|787F8E92-9837-4011-9F83-7DE593BDC002 +IShellMenu2|6F51C646-0EFE-4370-882A-C1F61CB27C3B +IShellMoniker|1079ACF9-29BD-11D3-8E0D-00C04F6837D5 +IShellReminderManager|968EDB91-8A70-4930-8332-5F15838A64F9 +IShellStorage|694D8DB5-F7A4-4E72-A547-2F3DD5FA5B0D +IShellTreeWalkerCallBack|95CE8411-7027-11D1-B879-006008059382 +IShellTreeWalker|95CE8410-7027-11D1-B879-006008059382 +IShellView|000214E3-0000-0000-0000-C00000000046 +IShotBoundaryDetCB|044F2AB8-440A-467C-8EF1-56E37A9F7682 +IShotBoundaryDet|4403C1A9-9A21-4158-A308-90FAC083A384 +ISignedData|AE9C454B-FC65-4C10-B130-CD9B45BA948B +ISigners|5A0780F8-9E6B-4BB0-BF54-87CD9627A8B4 +ISigner|51017B88-1913-49AD-82BE-6BB7C417DCF2 +ISimpleCrypt|9E617656-36AE-11D2-B605-00C04FB6F3A1 +ISimple|61CECB2B-68D3-11D0-8AE3-00C0F00AE35A +ISimple|CE13AE3B-097B-11D3-B30B-444553540001 +ISipBuddyNotify|D543B8E9-F704-4031-A518-5D392DC517B6 +ISipCallNotify|09555486-C969-41B1-B007-8BE299E23F93 +ISipCall|435176DD-1F8C-4866-819F-1CF7352E99D6 +ISipEnumParties|C4FA39E8-40DD-4C48-8870-28EE82BEB8FB +ISipRedirectContext|236662BE-5347-47A2-8960-8E662CA545CC +ISipStackNotify|3BB514ED-6021-4545-8CA1-AE5CB3703DEB +ISipStack|67CDA531-45AE-42AF-A0B3-8A53DC4D45FE +ISiteUser|589AF615-6AAE-11D2-B742-00C04FA3C554 +ISliderBar|3050F68D-98B5-11CF-BB82-00AA00BDCE0B +ISlideshowAlbum|AE444BBB-12E1-422B-A5D7-A0305E1DBB22 +ISlideshowDevice|13C382F9-D9B4-41CD-A6E7-07D985347450 +ISlideshowProjector|95D17579-E9CE-475E-B73D-CC73B8D715BF +ISlideshowService|2F8E640D-3378-4C56-BC17-6448405FF490 +ISmartRenderEngine|F03FA8CE-879A-4D59-9B2C-26BB1CF83461 +ISmartStart|5D8D8F19-8B89-11D1-ADDB-0000F87734F0 +ISmtpAdminAlias|1A04EA85-9414-11D0-906F-00AA00A1EAB7 +ISmtpAdminDL|1A04EA87-9414-11D0-906F-00AA00A1EAB7 +ISmtpAdminDomain|1A04EA88-9414-11D0-906F-00AA00A1EAB7 +ISmtpAdminService|1A04EA82-9414-11D0-906F-00AA00A1EAB7 +ISmtpAdminSessions|1A04EA84-9414-11D0-906F-00AA00A1EAB7 +ISmtpAdminUser|1A04EA86-9414-11D0-906F-00AA00A1EAB7 +ISmtpAdminVirtualDirectory|1A04EA92-9414-11D0-906F-00AA00A1EAB7 +ISmtpAdminVirtualServer|1A04EA83-9414-11D0-906F-00AA00A1EAB7 +ISmtpAdmin|1A04EA81-9414-11D0-906F-00AA00A1EAB7 +ISmtpGetAuxDomainInfoFlags|D038C9DA-4977-491D-8B0E-97F2E546C35A +ISmtpInCallbackContext|5E4FC9DA-3E3B-11D3-88F1-00C04FA35B86 +ISmtpInCallbackSink|0012B624-3E3C-11D3-88F1-00C04FA35B86 +ISmtpInCommandContext|5F15C533-E90E-11D1-8852-00C04FA35B86 +ISmtpInCommandSink|B2D42A0E-0D5F-11D2-AA68-00C04FA35B82 +ISmtpInboundCommandDispatcher|BFF8DD34-0F3E-11D2-AA68-00C04FA35B82 +ISmtpLog|35BC9AD7-7AA5-43EE-A0AB-94E1D6BE99E5 +ISmtpMaxMsgSize|B997F192-A67D-11D2-94F7-00C04F79F1D6 +ISmtpOutCommandContext|C849B5F2-0A80-11D2-AA67-00C04FA35B82 +ISmtpOutCommandSink|CFDBB9B0-0CA0-11D2-AA68-00C04FA35B82 +ISmtpOutboundCommandDispatcher|63E7758E-0A7D-11D2-AA67-00C04FA35B82 +ISmtpServerResponseContext|E38F9AD2-0A82-11D2-AA67-00C04FA35B82 +ISmtpServerResponseDispatcher|1011848A-0A7E-11D2-AA67-00C04FA35B82 +ISmtpServerResponseSink|D7E10222-0CA1-11D2-AA68-00C04FA35B82 +ISnapInData|66B409B0-EA78-11D1-B466-10AD50000000 +ISnapInDef|FFF9A8E3-06CB-11D2-9791-50C320524153 +ISnapInDesignerDef|E0899AD1-064D-11D2-9790-46AA20524153 +ISnapIn|792BA951-C809-11D1-B443-8EFD9A000000 +ISnapinTasks|0F1070D0-68F8-41CD-9169-65F553313B9F +ISniffStub|26D19E4F-819E-11D3-8D49-00C04F949D33 +ISocket|5ABE466A-FBC7-40FE-9372-CD5C6E901FF8 +ISoftKbdWindowEventSink|E4283DA5-D425-4F97-8B6A-061A03556E95 +ISoftKbd|3CB00755-7536-4B0A-A213-572EFCAF93CD +ISoftKeyboardEventSink|3EA2BB1D-66E7-47F7-8795-CC03D388F887 +ISortKeys|E66C8BAC-AC4E-4652-9857-16AB573720E1 +ISortKey|2280DE97-CB50-4838-A7E7-F46BA8C1F479 +ISoundCtl|7D004175-499C-490A-8BC2-1E834711DE45 +ISpCFGEngine|C83212D3-D5C9-408C-B353-311896878897 +ISpCFGGrammar|BBD61E95-C544-4167-AB64-B78E5D6E64B2 +ISpCallReceiver|9E50DA9E-8386-4AF8-AD13-B848B97227AF +ISpCallSender|E57C6132-F039-4F2B-92F6-FE5716822E89 +ISpCommunicatorInit|16342931-E549-4857-8575-75DE37517A6D +ISpCommunicator|F103FC92-0A29-4814-BF44-875D805C602B +ISpCys|389C9713-9775-4206-A047-A2F749F8039D +ISpDSoundAudio|8A105102-DD05-4CC9-B603-3626478DBFA1 +ISpGramCompBackendPrivate|B423F56F-1221-46FA-ADE9-CDF19F06658D +ISpIPCObject|BFFB0386-9399-11D2-8CA3-00C04F72DB08 +ISpIPC|B0F523DC-8BC2-11D2-8C9E-00C04F72DB08 +ISpMMSysAudioConfig|4DFDD13B-7A28-4678-9FEC-64483A2EDC3F +ISpObjectRef|9E7A2575-7001-4E05-822D-2794D6791093 +ISpSapiServer|31E99ED0-6AD8-431B-AE3C-652D9E8C7832 +ISpServerCallContext|04F78833-82F6-11D2-8C9E-00C04F72DB08 +ISpServerConnection|D0A0911C-0DC4-4CBF-9710-F9A329F5D392 +ISpServer|B9F57209-659F-43ED-97FE-84336A63BFFB +ISpStreamAccess|DD83D23F-66B4-4A77-A65D-C663DED45017 +ISpecialSystemProperties|000001B9-0000-0000-C000-000000000046 +ISpinButton|3050F68B-98B5-11CF-BB82-00AA00BDCE0B +ISrReceiver|20732258-527D-4ED4-ABE3-6AB51BEB08DB +ISrcSidUpdate|3686281C-2BC0-4A2A-ACB8-14179438B021 +IStage|6BC096AC-0CE6-11D1-BAAE-00C04FC2E20D +IStandardActivator|000001B8-0000-0000-C000-000000000046 +IStandardInfo|F1D9C1A5-9589-40DD-B63D-9BB0B38A1022 +IStartMenuPin|EC35E37A-6579-4F3C-93CD-6E62C4EF7636 +IStartPageSectionManager|36BED7F0-5645-40DA-9DF2-E729AFFBC089 +IStatisticsProvider|99780ED7-3C0D-4BB7-B238-9E0228EA4FF5 +IStatusCtl|4682C81A-B2FF-11D0-95A8-00A0C92B77A9 +IStatusObj|396DC4F3-DE80-4DAE-9C69-B69212410DED +IStiLockMgr|70681EA0-E7BF-4291-9FB1-FE550482AB88 +IStorageDescriptor|1079ACFA-29BD-11D3-8E0D-00C04F6837D5 +IStorageProcessor|5AE334C5-06DD-4321-B44F-63B1D23F2E57 +IStoreCallback|CFAD2437-EC54-11D1-9A54-00C04FA309D4 +IStoreFolder|E70C92AC-4BFD-11D1-8A95-00C04FB951F3 +IStoreNamespace|E70C92AA-4BFD-11D1-8A95-00C04FB951F3 +IStore|E860EF75-1B63-4254-AF47-960DAA3DD337 +IStringTable|20FDEBA0-E15A-42DA-9E3F-B5A5619E5229 +IStringsEnum|CAADD716-7A2E-4953-85C0-C3B4B3285668 +IStrings|28BDF592-6A13-42D4-BAC9-91E4159D07BB +ISubDivisionProvider|3050F4D2-98B5-11CF-BB82-00AA00BDCE0B +ISubscriptionAgentControl|A89E8FF0-70F4-11D1-BC7F-00C04FD929DB +ISubscriptionAgentEvents|A89E8FF1-70F4-11D1-BC7F-00C04FD929DB +ISubscriptionAgentShellExt|81B184BA-B302-11D1-8552-00C04FA35C89 +ISubscriptionMgrPriv|D66B399E-AF1D-11D1-A1F9-00C04FC2FBE1 +ISubscriptionThrottler|1E9B00E4-9846-11D1-A1EE-00C04FC2FBE1 +ISvcMgmtStartStopHelper|F62DEC25-E3CB-4D45-9E98-933DB95BCAEA +ISvcMgr|0A21C387-235B-4440-A072-23258F001F1B +ISyncMgrRegisterCSC|47681A61-BC74-11D2-B5C5-00C04FB93981 +ISyncMgrRegister|894D8C55-BDDF-11D1-B85D-00C04FB93981 +ISyncMgrSynchronizeCallback|6295DF29-35EE-11D1-8707-00C04FD93327 +ISyncMgrSynchronize|6295DF28-35EE-11D1-8707-00C04FD93327 +ISyncScheduleMgr|F0E15897-A700-11D1-9831-00C04FD910DD +ISyncSchedulep|F0E1589B-A700-11D1-9831-00C04FD910DD +ISyncSchedule|F0E15899-A700-11D1-9831-00C04FD910DD +ISynchronizedCallBack|74C26041-70D1-11D1-B75A-00A0C90564FE +ISysColorCtrl|C47195EB-CD7A-11D1-8EA3-00C04F9900D7 +ISystemActivator|000001A0-0000-0000-C000-000000000046 +ISystemDebugPluginAttachment|6C736D15-F7AC-4114-B8E6-50908F28AC5B +ISystemDebugPluginControl|6C736D3F-7E40-41E2-9877-8CA63B493464 +ISystemDebugPlugin|6C736DDC-00F1-4C63-ABD8-638E1381B73B +ISystemInfo|45AC8C61-23E2-11D1-A696-00C04FD58BC3 +ITAgentSupervisor|587E8C26-9802-11D1-A0A4-00805FC147D3 +ITAttributeList|5037FB82-CAE9-11D0-8D58-00C04FD91AC0 +ITAudioDeviceControl|6C0AB6C5-21E3-11D3-A577-00C04F8EF6E3 +ITAudioSettings|6C0AB6C6-21E3-11D3-A577-00C04F8EF6E3 +ITCallQualityControl|FE1D8AE0-EDC4-49B5-8F8C-4DE40F9CDFAF +ITConferenceBlob|C259D7AA-C8AB-11D0-8D58-00C04FD91AC0 +ITConnection|8FA381D4-C8C2-11D0-8D58-00C04FD91AC0 +ITDCCtlEvents|333C7BC6-460F-11D0-BC04-0080C7055A83 +ITDCCtl|333C7BC5-460F-11D0-BC04-0080C7055A83 +ITFormatControl|6C0AB6C1-21E3-11D3-A577-00C04F8EF6E3 +ITGroupSupervisor|587E8C24-9802-11D1-A0A4-00805FC147D3 +ITIMEBodyElement|111C45F0-4DE9-11D2-B954-00C04FA32195 +ITIMEContainer|BEA46ABF-F895-4F15-80FD-8DEC9D6558EC +ITIMEContentPlayerSite|911A444E-B951-43EA-B3AA-17EFC2879831 +ITIMEDAElementRenderSite|7A6AF9A0-9355-11D2-80BA-00C04FA32195 +ITIMEDAElementRender|9E328494-9354-11D2-80BA-00C04FA32195 +ITIMEDAElement|17C7A570-4D53-11D2-B954-00C04FA32195 +ITIMEDshowTestPlayerObject|FAC64649-FD53-4A41-89B8-DA126CB9DD10 +ITIMEElementCollection|1C00BC3A-5E1C-11D2-B252-00A0C90D6111 +ITIMEElement|E53DC05C-3F93-11D2-B948-00C04FA32195 +ITIMEFactory|423E9DA4-3E0D-11D2-B948-00C04FA32195 +ITIMEImageRender|816D8132-DBAE-48EE-A99D-F15FAD645CC4 +ITIMEImportMedia|4F9B5291-E6E0-419E-A28D-09EB23E91CB3 +ITIMEInternalEventGenerator|9E3F5BBF-C5C6-4A56-AD53-1FA5C8C2A69F +ITIMEInternalEventSink|C9136C4D-D1F6-44D2-B7A9-8B48ED08979D +ITIMEMMFactory|73BA8F8A-80E0-11D2-B263-00A0C90D6111 +ITIMEMMViewSite|AF60BA34-91A0-11D2-80B9-00C04FA32195 +ITIMEMMView|A415FBF4-9118-11D2-80B9-00C04FA32195 +ITIMEMediaDownloader|A951B11A-C712-45B3-B884-2469A6243368 +ITIMEMediaElement|68675562-53AB-11D2-B955-3078302C2030 +ITIMEMediaNative|3E3535C0-445B-4EF4-8A38-4D379CBC9828 +ITIMEMediaPlayer|E6FAA0B2-69FE-11D2-B259-00A0C90D6111 +ITIMENodeBehavior|53D94C9F-5A20-4701-A36B-D9CB58751B97 +ITIMENodeMgr|BC5A60BE-0FEA-443A-95AE-A3E4C9715C88 +ITIMENode|85918F51-2E04-4636-8B12-084F92A1B3E0 +ITIMEProxyPlayer|0F317F2C-3938-4E5B-85D0-BED3F7A0CBF2 +ITIMEScalePlayer|C3AB1540-BF1E-4A21-94CC-C18DF41C2880 +ITIMETransitionDependencyMgr|FCD84C84-3878-4FD8-BE54-6B4E1AC248F9 +ITLocalParticipant|39CBF055-F77A-11D2-A824-00C04F8EF6E3 +ITMediaCollection|6A8E16A2-0ABC-11D1-976D-00C04FD91AC0 +ITMedia|0CC1F053-CAEB-11D0-8D58-00C04FD91AC0 +ITParticipantControl|D2EE6684-5A34-11D2-95A0-00A0244D2298 +ITParticipantEvent|8BB35070-2DAD-11D3-A580-00C04F8EF6E3 +ITParticipantSubStreamControl|2C679108-5A35-11D2-95A0-00A0244D2298 +ITParticipant|5899B820-5A34-11D2-95A0-00A0244D2298 +ITQOSApplicationID|E8C89D27-A3BD-47D5-A6FC-D2AE40CDBC6E +ITSDiagnosis2|0C3E9E25-E3E8-4400-9A66-2B6CFC57F99B +ITSDiagnosis|50B5F461-FDC2-40D4-B2C5-1C2EE0CDA190 +ITSHOOTCtrl|4B106872-DD36-11D0-8B44-00A024DD9EFF +ITSSessionDirectoryEx|012B47B7-2F06-4154-AD0C-C64BCDF0D512 +ITSSessionDirectory|0241E043-1CB6-4716-AA50-6A492049C3F3 +ITSdp|9B2719D8-B696-11D0-A489-00C04FD91AC0 +ITShootATL|66AC81E5-8926-11D1-8B7D-0060089BD8C4 +ITStreamQualityControl|6C0AB6C2-21E3-11D3-A577-00C04F8EF6E3 +ITTimeCollection|0CC1F04F-CAEB-11D0-8D58-00C04FD91AC0 +ITTime|2652BB78-1516-11D1-9771-00C04FD91AC0 +ITVEAttrMap|05500121-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVEAttrTimeQ|05500122-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVECBAnnc|05500141-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVECBDummy|05500144-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVECBFile|05500143-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVECBTrig|05500142-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVEEnhancement_Helper|05500204-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVEEnhancements|05500114-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVEEnhancement|05500104-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVEFeature|05500305-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVEFile|05500151-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVEFilter_Helper|05500280-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVEFilter|05500180-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVEMCastCallback|05500133-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVEMCastManager_Helper|05500232-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVEMCastManager|05500132-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVEMCasts|05500131-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVEMCast|05500130-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVENavAid_Helper|05500260-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVENavAid_NoVidCtl|05500360-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVENavAid|05500160-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVEService_Helper|05500205-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVEServices|05500115-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVEService|05500105-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVESupervisorGITProxy|05500306-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVESupervisor_Helper|05500206-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVESupervisor|05500106-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVETestControl|E3C09749-3EAD-48E1-8A90-908A96EA32E5 +ITVETrack_Helper|05500202-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVETracks|05500112-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVETrack|05500102-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVETriggerCtrl_Helper|05500191-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVETriggerCtrl|05500190-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVETrigger_Helper|05500201-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVETrigger|05500101-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVEVariation_Helper|05500203-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVEVariations|05500113-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVEVariation|05500103-FAA5-4DF9-8246-BFC23AC5CEA8 +ITVEViewEQueue|600D0606-8626-4F8C-9C1F-E03F7D253691 +ITVEViewEnhancement|600D0602-8626-4F8C-9C1F-E03F7D253691 +ITVEViewFile|600D0607-8626-4F8C-9C1F-E03F7D253691 +ITVEViewMCastManager|600D0608-8626-4F8C-9C1F-E03F7D253691 +ITVEViewService|600D0601-8626-4F8C-9C1F-E03F7D253691 +ITVEViewSupervisor|600D0600-8626-4F8C-9C1F-E03F7D253691 +ITVEViewTrack|600D0604-8626-4F8C-9C1F-E03F7D253691 +ITVEViewTrigger|600D0605-8626-4F8C-9C1F-E03F7D253691 +ITVEViewVariation|600D0603-8626-4F8C-9C1F-E03F7D253691 +ITVProfile|28B576D7-E966-4393-AAF2-F139B096DD4C +ITableEnumEntries|9164C121-63AF-11D1-99DC-0000860F614C +ITable|0156742F-62A0-11D1-BC72-00C04FC3092D +ITapiLocationInfo|CB632C75-8DD4-11D1-ADDF-0000F87734F0 +ITapiNotification|8AD4E88F-4660-11D1-B623-00C04FA3C554 +ITaskAnalyzeCluster|795737A1-E13A-45EB-8DFD-8185C4B7AD4E +ITaskCommitClusterChanges|1BF12DDE-F8B0-49B1-A458-6747DB788A47 +ITaskCompareAndPushInformation|D4F1C2AF-B370-49DE-8768-4010B568636C +ITaskFrame|01D5D917-A57E-4472-9B28-41F35AEEAEFB +ITaskGatherClusterInfo|E167965C-C5D6-493C-A343-4C105C01DDE7 +ITaskGatherInformation|B9AAF3F8-238E-4993-BA31-14859804F92C +ITaskGatherNodeInfo|F19A2E01-2CB3-47B4-8F5D-B977176B45C8 +ITaskGetDomainsCallback|85402E44-6834-41DF-8590-01827D124E1B +ITaskGetDomains|DFCB4ACD-C4DB-4DB4-8EBB-1DD07A9D5B82 +ITaskLoginDomainCallback|EFAF3C43-7A8F-469B-B8BB-C80C5747CE05 +ITaskLoginDomain|76AD8E51-53C3-4347-895D-6C30F4139374 +ITaskManager|16116694-DFC5-470B-AC12-46FBB01CEF10 +ITaskPageFactory|00AD7D5E-78FA-4A43-9C30-5C589E67AF32 +ITaskPage|66F3137E-2915-442C-9D49-277A7901B091 +ITaskPollingCallback|49E92395-66AF-4ADD-A41E-43512CB519B3 +ITaskSheetPropertyBag|EFC6FCE9-FF4B-4111-A9E8-1C2C1183E236 +ITaskSheetPropertyNotifySink|9437CEB1-4BC7-4668-8A44-81BBD5B89DDD +ITaskSheet|5ACDE375-B874-405D-B59F-7B9932787841 +ITaskUI_HTMLControl|AF4ABA62-51ED-415A-B23A-4F9D9D787B52 +ITaskVerifyIPAddress|0C95E1B1-0CFF-4740-8ABD-69912D105BD1 +ITaskpadViewDefs|FFF9A903-06CB-11D2-9791-50C320524153 +ITaskpadViewDef|FFF9A8F1-06CB-11D2-9791-50C320524153 +ITaskpad|861481F1-D867-11D1-B450-C43058000000 +ITasks|861481F3-D867-11D1-B450-C43058000000 +ITask|861481F5-D867-11D1-B450-C43058000000 +ITcpAccessExceptions|25ED205C-CF50-11D0-BC07-00C04FC3092D +ITcpAccessExceptions|CBF09FA1-B9AC-11D0-8977-00AA00A74BF2 +ITcpAccessException|25ED205D-CF50-11D0-BC07-00C04FC3092D +ITcpAccessException|326E38C0-C32A-11D0-8989-00AA00A74BF2 +ITcpAccess|25ED205B-CF50-11D0-BC07-00C04FC3092D +ITcpAccess|CBF09FA0-B9AC-11D0-8977-00AA00A74BF2 +ITcpipProperties|98133271-4B20-11D1-AB01-00805FC1270E +ITestChild|8524D9F4-363F-4C40-81E9-3EB546D0B0FD +ITestConnectId|60000305-76D7-11CF-9AF1-0020AF6E72F4 +ITestConnectImp|60000302-76D7-11CF-9AF1-0020AF6E72F4 +ITestEncryptId|60000306-76D7-11CF-9AF1-0020AF6E72F4 +ITestEncryptImp|60000303-76D7-11CF-9AF1-0020AF6E72F4 +ITestLog|6422D0C2-1D66-11D5-B5FC-00005A990A0C +ITestNoneId|60000304-76D7-11CF-9AF1-0020AF6E72F4 +ITestNoneImp|60000301-76D7-11CF-9AF1-0020AF6E72F4 +ITestParent|8524D9F3-363F-4C40-81E9-3EB546D0B0FD +ITestSE|6CB4F115-6D30-4925-AED6-FF3363CF1894 +ITestSuites|5387486D-3ADB-4796-8FC1-848DC0568B4A +ITestSuite|4AB0CCE2-72E0-4F7B-9479-031E307DB801 +ITest|60000300-76D7-11CF-9AF1-0020AF6E72F4 +ITest|60000494-AB0F-101A-B4AE-08002B30612C +ITest|8C148023-CB9F-4B1D-98E7-A912E6837B2C +ITextStoreAnchorServices|AA80E9FE-2021-11D2-93E0-0060B067B86E +ITfBackgroundThreadMgr|38462B47-6127-4464-BD2F-46957C31AD0E +ITfCandUIAutoFilterEventSink|28AE3D7B-C38F-4EFA-AEDB-F8CACC1B7422 +ITfCandUICandIndex|FC0C7CC9-B065-4D8C-B37D-EE470835A486 +ITfCandUICandListBox|81DEFE18-4363-4E9F-A0E4-205BF3D2159E +ITfCandUICandString|C9E79120-83C5-438E-9927-43008DB6C99A +ITfCandUICandTipButton|B32EC07E-6B08-4AD9-B363-E96E2A060330 +ITfCandUICandTipWindow|2650D06E-6EE7-40BB-989F-73EE917E00CE +ITfCandUICandWindow|483324B6-C1A8-4A48-A543-C4F26FD32A29 +ITfCandUICaption|7243C0CD-474A-4B71-99A7-F88428E04A57 +ITfCandUIExtButtonEventSink|5C0FB534-1C7E-48C2-908F-008566C1CBB0 +ITfCandUIExtObject|8CF2F281-9ADD-4021-9A0D-62C0E11BC384 +ITfCandUIExtPushButton|4466C342-4FD6-43E4-8D23-34F443EF2D01 +ITfCandUIExtSpace|1FC2FB39-99FB-4CC4-9F6F-7FF31FE9F1A2 +ITfCandUIExtToggleButton|C16A174A-5628-4050-8DFE-0D82E7265BA1 +ITfCandUIExtraCandidate|F6510BB9-F697-43D1-A5E2-EFF290D00DFC +ITfCandUIFnAutoFilter|499394AB-67C3-48A5-A45C-5080509E0FFB +ITfCandUIFnExtension|C441B720-C7A0-4823-A257-8C3CD7BF14BA +ITfCandUIFnKeyConfig|2CCDE6D6-6E0A-4231-9496-CE0DA8AAA22B +ITfCandUIFnSort|DB7495F7-BC6C-420C-A49D-7470E41B1A41 +ITfCandUIFnUIConfig|1037334C-8422-4C73-B854-F1A4616169D7 +ITfCandUIInlineComment|D4B1E0A2-AAF7-44F4-ADF9-818B207BCF39 +ITfCandUIKeyTable|4F9D0BCA-C834-4A46-8DEF-B7544671D602 +ITfCandUIMenuButton|77D031F3-87E5-458D-999C-237D9AE4D897 +ITfCandUIMenuEventSink|944F237E-F03B-4BB9-B8F3-7AFA51582D1A +ITfCandUIMenuExtension|6875610E-8912-44C6-BCAB-48C6CFF915E3 +ITfCandUIObject|C45D5B93-F651-41F0-AC45-13252F35BFDC +ITfCandUIPopupCommentText|5770E84B-0B59-462D-8836-D70BBC8C8767 +ITfCandUIPopupCommentTitle|CB21BC71-1974-4FB6-A9B0-F5BCC8F3C44B +ITfCandUIPopupCommentWindow|6EC789D1-7E81-4ECF-B726-F944C69E9987 +ITfCandUIRawData|AFD12370-D6C3-4E9E-A625-88BDFBEF7B2F +ITfCandUISortEventSink|212D4632-58AA-433E-9AEA-67A2EFE70CB9 +ITfCandUIToolTip|8B5EC727-F645-4651-A318-6A4E2ED69666 +ITfCandidateListExtraCandidate|85BBEEB5-BA64-411E-ABB3-ED379275FAB4 +ITfCandidateListRawData|CDD01281-8228-45A0-9B55-CC44C2A2A091 +ITfCandidateListTip|C28A9C90-16B1-4064-A190-0B9E5F592539 +ITfCandidateStringColor|43FB8EEE-FF1C-42A1-810C-77201DF6717E +ITfCandidateStringFixture|B85C0208-4FEC-418C-85D0-C62AD29A092B +ITfCandidateStringFlag|91114C09-1FB3-4771-9701-74FD18E1309A +ITfCandidateStringIcon|46275059-C606-41B0-AAC8-C8AA48B82998 +ITfCandidateStringInlineComment|A55119CC-FED4-49DE-85B2-B6B55F26B00F +ITfCandidateStringPopupComment|66D2AB70-D46C-4543-A4A9-C68B00B43B4C +ITfCandidateUIContextOwner|9FA4580F-CF50-43F4-AF09-5E8CABE372C2 +ITfCandidateUI|E45F7B70-A4C3-48CD-8EDD-3E784A8F5EAE +ITfContextRenderingMarkup|A305B1C0-C776-4523-BDA0-7C5A2E0FEF10 +ITfContext_P|2DEE47C8-704D-42A0-9983-FFEED659B64D +ITfDisplayAttributeCollectionMgr|4E3D2D48-3C17-457D-84A1-F209476DE897 +ITfDisplayAttributeCollectionProvider|3977526D-1A0A-435A-8D06-ECC9516B484F +ITfFnAbort|17F2317F-ADDB-49DF-870E-66227BC51D1A +ITfFnSoftKbd|E7342D48-573F-4F22-9181-41938B2529C2 +ITfKeystrokeMgr_P|53FA1BEC-5BE1-458E-AE70-A9F1DC843E81 +ITfLangBarAddIn|C9ADDAC3-15CB-4957-B93C-DB0873FF98BB +ITfLangBarEventSink_P|7A460360-DA21-4B09-A8A0-8A69E728D893 +ITfLangBarMgr_P|D72C0FA9-ADD5-4AF0-8706-4FA9AE3E2EFF +ITfMouseTrackerAnchor|F9F4E0F2-D600-4A4C-B144-77E201EBD1B0 +ITfOptionsCandidateList|605133F7-758D-42FC-A3FE-10146A7D52F9 +ITfPersistentPropertyLoaderAnchor|2133F790-34C2-11D3-A745-0050040AB407 +ITfProperty2|DB261FAA-2142-486A-B5C6-D2101BC03D2E +ITfRangeAnchor|8B99712B-5815-4BCC-B9A9-53DB1C8D6755 +ITfRangeChangeSink|C1A0E6AF-0D60-4800-9796-1FE8E85C0CCA +ITfSoftKbdRegistry|F5F31F14-FDF0-4D29-835A-46ADFE743B78 +ITfStartReconversionNotifySink|B9CD19CB-2919-4935-8768-EF30BAE9A0CC +ITfSysHookSink|495388DA-21A5-4852-8BB1-ED2F29DA8D60 +ITfThreadMgr_P|7C6247A1-2884-4B7C-AF24-F198047AA728 +ITfThreadMgr_P|F65567A7-34A1-46F4-B5DD-8804AEB06FF7 +IThemeManager|04D5D56C-EEAF-4419-B786-300284D6BB5F +IThemePreview|B63705F2-B2A2-401E-A20D-643E6B554A1D +IThemeScheme|AA49D906-65B2-42D6-A26A-2EE03C83F839 +IThemeSize|72DD2E7F-21E5-46DC-8847-CDDCF58B6725 +IThemeStyle|3672E804-D69D-43D8-AF58-F320B8D9AF32 +IThemeUIPages|7BBA4934-AC4B-471C-A3E7-252C5FF3E8DD +ITheme|A41C22EB-0F93-40AE-B7CE-37A4C4C81B01 +IThumbCtl|E8ACCAE0-23E6-11D1-9E88-00C04FDCAB92 +IThumbnail2|500202A0-731E-11D0-B829-00C04FD706EC +IThumbnail|6D45A930-F71A-11D0-9EA7-00805F714772 +ITimeoutCallback|28B44B1D-07A9-11D2-9A63-00C04FA309D4 +ITimerService|4648212F-B251-11D2-A438-00C04FB177E3 +ITimerSink|4648303A-B251-11D2-A438-00C04FB177E3 +ITimer|46482130-B251-11D2-A438-00C04FB177E3 +ITipWindow|CC3E4D95-23DD-4C46-8EC4-28B80D262971 +IToolbar|A5064425-D541-11D4-9523-00B0D022CA64 +IToolsCtl|64D9163E-BA0F-11D0-979C-00A0C908612D +IToolsResponse|57F8E610-14F9-11D1-8ABD-00C0F00910F9 +ITrace|E9513B6B-8A3D-11D2-B9FE-00C04F72D90E +ITransProtocolSink|7291765A-A83F-401D-81A6-112C3A468A7B +ITransactionData|79EAC9CF-BAF9-11CE-8C82-00AA004BA90B +ITransferAdviseSink|D082C196-A2B2-41FF-A5E5-80EFF91B7D79 +ITransferConfirmation|FC45985F-07F8-48E3-894C-7DEE8ED66EE5 +ITransferDest|9FE3A135-2915-493B-A8EE-3AB21982776C +ITransportCallbackService|CA30F3FF-C9AC-11D1-9A3A-00C04FA309D4 +ITransportCallback|0DF2C7E1-3435-11D0-81D0-00C04FD85AB4 +ITravelLogClient2|0AD364CE-ADCB-11D3-8269-00805FC732C0 +ITravelLogClient|3050F67A-98B5-11CF-BB82-00AA00BDCE0B +ITravelLogEx|3050F679-98B5-11CF-BB82-00AA00BDCE0B +ITrayNotify|FB852B2C-6BAD-4605-9551-F15F87830935 +ITrialEnd|438B8ECC-AD2A-11D1-ADEB-0000F87734F0 +ITrkForceOwnership|A2531F44-C67D-11D0-8CB1-00C04FD90F85 +ITrkRestoreNotify|D0056F6B-E2A0-11D0-B1C2-00C04FB9386D +ITrkRestoreParser|755939E3-E381-11D0-B1C5-00C04FB9386D +ITrustEnumerator|8FFC5DF0-2357-11D3-AFC9-0090270D4944 +ITrust|F88BBE74-7BF0-4F8B-B3B4-78BDC9E7E771 +ITuneRequest|49A32D3C-7D85-11D2-8895-00C04F794967 +ITveTree|600D0611-8626-4F8C-9C1F-E03F7D253691 +ITveView|14AED0F3-E98F-4FA3-973F-AF8CE2FA24E6 +IUICommandTarget|2CB95001-FC47-4064-89B3-328F2FE60F44 +IUICommand|4026DFB9-7691-4142-B71C-DCF08EA4DD9C +IUIElement|EC6FE84F-DC14-4FBB-889F-EA50FE27FE0F +IUKProxyInternal|248782D3-604E-11D1-97FC-00C04FB9618A +IUKStub|2B2340A6-8795-11D1-B884-00C04FB9618A +IULApi|0AC64F0A-AD5A-46D6-A4D4-078070C0A5D7 +IULProvider|8E82AE01-D1A3-11D2-9374-00C04F72DAF7 +IULServer|8E82AE02-D1A3-11D2-9374-00C04F72DAF7 +IULSession|8E82AE00-D1A3-11D2-9374-00C04F72DAF7 +IUPnPAutomationProxy|C4AB1FEA-D0DD-44FD-96CB-41B41B5F718A +IUPnPContainerManager|6D8FF8D4-730D-11D4-BF42-00B0D0118B56 +IUPnPContainer|6D8FF8D3-730D-11D4-BF42-00B0D0118B56 +IUPnPDescriptionManager|6D8FF8D7-730D-11D4-BF42-00B0D0118B56 +IUPnPDeviceHostICSSupport|3FFC5AE5-A66B-499C-A180-C7393DB6BA8D +IUPnPDeviceHostSetup|6BD34909-54E7-4FBF-8562-7B89709A589A +IUPnPDevicePersistenceManager|6D8FF8D9-730D-11D4-BF42-00B0D0118B56 +IUPnPDynamicContentProvider|6D8FF8D5-730D-11D4-BF42-00B0D0118B56 +IUPnPDynamicContentSource|6D8FF8D6-730D-11D4-BF42-00B0D0118B56 +IUPnPEventingManager|6D8FF8D1-730D-11D4-BF42-00B0D0118B56 +IUPnPPrivateCallbackHelper|8DCC8327-DBE9-48E6-846C-33725865D50C +IUPnPPrivateDocumentCallbackHelper|19432A8E-4A32-4860-B8FB-95B1117CD4E5 +IUPnPPrivateServiceHelper2|340F4076-6856-48F9-B3C4-97B91B68D77E +IUPnPRegistrarICSSupport|6D8FF8DE-730D-11D4-BF42-00B0D0118B56 +IUPnPRegistrarLookup|6D8FF8DA-730D-11D4-BF42-00B0D0118B56 +IUPnPRegistrarPrivate|6D8FF8DB-730D-11D4-BF42-00B0D0118B56 +IUPnPSampleService|774B4314-82C7-4560-BBC8-960F8C7139F7 +IUPnPServiceCallbackPrivate|24EA2515-F612-4528-BA82-7BD3DBBAD303 +IUPnPServiceDescriptionInfo|F5B63656-069D-4E80-B4FD-9E0DB16604D8 +IUPnPValidationManager|6D8FF8E4-730D-11D4-BF42-00B0D0118B56 +IURLViewDefs|FFF9A900-06CB-11D2-9791-50C320524153 +IURLViewDef|FFF9A8EF-06CB-11D2-9791-50C320524153 +IUdpBroadcastMapper|E501032A-64D3-492F-980E-A04D0FAC3D7D +IUmiBaseObject|12575A7C-D9DB-11D3-A11F-00105A1F515A +IUmiConnection|5ED7EE20-64A4-11D3-A0DA-00105A1F515A +IUmiContainer|5ED7EE21-64A4-11D3-A0DA-00105A1F515A +IUmiCursor|5ED7EE26-64A4-11D3-A0DA-00105A1F515A +IUmiCustomInterfaceFactory|14CD599E-2BE7-4C6F-B95B-B150DCD93585 +IUmiObjectSink|5ED7EE24-64A4-11D3-A0DA-00105A1F515A +IUmiObject|5ED7EE23-64A4-11D3-A0DA-00105A1F515A +IUmiPropList|12575A7B-D9DB-11D3-A11F-00105A1F515A +IUmiQuery|12575A7E-D9DB-11D3-A11F-00105A1F515A +IUmiURLKeyList|CF779C98-4739-4FD4-A415-DA937A599F2F +IUmiURL|12575A7D-D9DB-11D3-A11F-00105A1F515A +IUnicodeScriptMapper|3145D002-89C0-48EB-9E01-7B0107E422A0 +IUniqueId|EA4DFDF2-9E87-4C57-B845-123872C5649F +IUpcallPoolControl|61CBF71F-782F-11D2-B8B2-00C04FB9618A +IUpcallPoolWorker|61CBF720-782F-11D2-B8B2-00C04FB9618A +IUpdateCompleteListener|1C06B895-E4C8-48EB-9E03-15A53B43B6CA +IUpdateInf|0117EAC4-29E0-4F81-8A19-80900CCFFFE5 +IUpdates|11178075-25D2-4C9C-8087-4C36924091E1 +IUpdate|4F5E50AF-A2C0-40EF-AC9A-469D9462EA76 +IUploadEventsWrapper|5F341B81-0286-11D3-9397-00C04F72DAF7 +IUpload|F21EB30D-AA39-47F5-AB0B-686F783147B0 +IUrlTrackingStg|F2F8CBB3-B040-11D0-BB16-00C04FB66F63 +IUrl|BEC9B392-D24D-4D40-B6BF-4AF3DC6D1A74 +IUserEventTimerCallback|E9EAD8E6-2A25-410E-9B58-A9FBEF1DD1A2 +IUserEventTimer|0F504B94-6E42-42E6-99E0-E20FAFE52AB4 +IUserIdentity2|A9AE6C94-1D1B-11D2-B21A-00C04FA357FA +IUserIdentityManager|A9AE6C90-1D1B-11D2-B21A-00C04FA357FA +IUserIdentity|A9AE6C8E-1D1B-11D2-B21A-00C04FA357FA +IUserInfo|9E12E76C-94D6-11D1-ADE2-0000F87734F0 +IUserMigration|ED07BCE9-5968-4BE8-BE85-E976C93AD2CC +IUserPageUI|B5C84CF1-1ED4-49E4-AD34-07C41B956CB8 +IUserRights|B56EF479-0518-435E-8EED-2884A879BF1E +IUserSecurity|1C07E443-150E-4829-986A-A14E21DD50E5 +IUserToken|000001FC-0000-0000-C000-000000000046 +IUtilityButton|3050F6AF-98B5-11CF-BB82-00AA00BDCE0B +IUtils|3AB88004-BBAF-421F-85A1-5D76CCA4FF0B +IUtil|C5A7C759-1E8D-4B1B-B1E4-59F7F9B5171B +IVMRMixerControl|56949F22-AA07-4061-BB8C-10159D8F92E5 +IVMRMixerStream|43062408-3D55-43CC-9415-0DAF218DB422 +IVMRSurfaceAllocatorInternal|26716B2E-9B79-4A48-8DDF-A8131183803B +IVPEConfig|BC29A660-30E3-11D0-9E69-00C04FD7C15B +IVPE|BC29A661-30E3-11D0-9E69-00C04FD7C15B +IVSAPluginControllerSink|DE72CE05-34E5-4925-9216-5066C3CD9B50 +IVSAPluginController|0F042DDE-305D-42DE-8F71-2013FA3D2203 +IVSAQAdmin|E2ED3340-1E96-11D3-BFCC-00C04FA3490A +IVSAQLink|3F962F94-1ECD-11D3-BFCC-00C04FA3490A +IVSSShellExt|D80573DF-5347-42C3-8E71-110369666D7A +IVersionHost|667115AC-DC02-11D1-BA57-00C04FC2040E +IVersionVector|4EB01410-DB1A-11D1-BA53-00C04FC2040E +IVideoCaptureEnum|244C959E-1370-11D1-BC3A-00AA00A13C86 +IVideoCapture|09D9467A-1366-11D1-BC3A-00AA00A13C86 +IVideoChannel|4C4DA8B4-B92C-11D1-AA97-00C04FC9B202 +IVideoDevice|0296D416-B92C-11D1-AA97-00C04FC9B202 +IVideoFeed|C35F615F-8A24-11D1-B673-00C04FA3C554 +IVideoHost|10AF28CE-0961-11D3-901F-00C04F8EC9A1 +IVideoPreview|D82237EC-5BE9-4760-B950-B7AFA51B0BA9 +IVideoRenderCtl|888D5480-CABB-11D1-8505-00A0C91F9CA0 +IViewDefs|FFF9A8E2-06CB-11D2-9791-50C320524153 +IViewFilterEx|0502BE50-2C09-11D0-8439-00AA006C88E9 +IViewFilterSink|137ACCD0-2C09-11D0-8439-00AA006C88E9 +IViewFilterSite|3050F2F4-98B5-11CF-BB82-00AA00BDCE0B +IViewFilter|3050F2F1-98B5-11CF-BB82-00AA00BDCE0B +IViewFilter|76D88DA0-2C08-11D0-8439-00AA006C88E9 +IViewTransitionSite|3050F373-98B5-11CF-BB82-00AA00BDCE0B +IViewTransition|3050F372-98B5-11CF-BB82-00AA00BDCE0B +IViews|425A3A30-E5E8-11D1-B459-22CD70000000 +IView|425A3A34-E5E8-11D1-B459-22CD70000000 +IView|CACECD29-3108-4132-9A4E-53B54FFDAFA0 +IVirusScanEngine|083DB180-B4A8-11CF-AAFA-00AA00B6015C +IVirusScanner|4589BEE0-B4B1-11CF-AAFA-00AA00B6015C +IVolAssign|4A009E82-DC42-11D0-9925-00A0C9058BF6 +IVssAsync|C7B98A22-222D-4E62-B875-1A44980634AF +IVssCoordinator|93BA4344-AA56-403E-87F2-819650FEDACD +IVssDifferentialSoftwareSnapshotMgmt|932666EB-2A46-4E1B-B01D-F42AF1B05F3C +IVssProviderCreateSnapshotSet|C4226E73-2F8B-490D-84E0-F9486B4ED627 +IVssShim|D6222095-05C3-42F3-81D9-A4A0CEC05C26 +IVssSoftwareSnapshotProvider|FBE2D3E8-4C8C-4464-9FE9-C3B6AE023357 +IVssWriterCallback|ED4A8B9D-3377-4884-A493-74897CA57E68 +IVssWriter|2F7BF5AA-408A-4248-907A-2FD7D497A703 +IVssWriter|9171F2F2-E6F8-445B-91C5-504BF41D1D07 +IW3Control|52C550C6-067F-4BC8-98B2-0F0E91C10261 +IW3SpoofClientSupport|D9BFDDC0-1B08-4363-BEFA-CD8BD3FEFBCD +IW3SpoofEvents|64896C1C-7757-4858-BD08-707CD34C1BC4 +IWANIPConnectionService|B99A547A-9574-46DA-8774-3ECAF70BC12F +IWANPOTSLinkConfigService|EA3788A7-84B8-4831-A4F9-9E842D0D44BA +IWHTBufferObject|12384CAB-A208-49C2-B411-DB6A8788E46D +IWHTSystemTime|E71D43A4-451E-496B-98E5-3DC548EABE7A +IWHTUrlComponents|E4B8FEDE-7AB8-4478-A805-492F0D86FD6D +IWHTWin32ErrorCode|564782A9-38DB-4039-8888-F8C7576FBEC5 +IWMIComplexCooker|B1ADC67F-09E6-4ADC-A45E-05BA3007CE30 +IWMIComplexObjectCooker|979FF10D-D616-4448-BF08-3A79E01506B0 +IWMIFilterManager|64DCCA00-14A6-473C-9006-5AB79DC68491 +IWMIObjectBrokerRegistration|B8B2DB7D-68E8-46B0-A08E-AAF46F8B40D4 +IWMIObjectBroker|F3408C9C-1E88-4DBE-BD71-0303C1E21A72 +IWMIRefreshableCooker|13ED7E55-8D63-41B0-9086-D0C5C17364C8 +IWMISimpleCooker|510ADF6E-D481-4A64-B74A-CC712E11AA34 +IWMISimpleObjectCooker|A239BDF1-0AB1-45A0-8764-159115689589 +IWMIXMLConverter|F46ACA59-7ED3-45ED-AE2E-3C64DA381459 +IWMLicenseRestore|C70B6334-0544-4EFB-A245-15E65A004A13 +IWMPLaunch|632FB7B5-4A7B-432D-AC3A-ABE771D600B2 +IWMPPlayer2|4F6F41BA-E776-433B-B409-C63D16382D26 +IWamRequest|888ADDDD-9993-11D0-A539-00A0C922E798 +IWam|888ADDCF-9993-11D0-A539-00A0C922E798 +IWaveInStream|17CB3BC0-6FD4-11D1-A95B-00C04FD7CCF1 +IWaveSampleCallback|72B36900-7640-11D1-A95B-00C04FD7CCF1 +IWaveStreamSample|8FDC0390-9136-11D1-A95C-00C04FD91A6F +IWbemCallResultEx|C1E2D758-CABD-11D3-A11B-00105A1F515A +IWbemCallStatus|4212DC47-142E-4C6C-BC49-6CA232DD0959 +IWbemCausalityAccess|A57BE31E-EFE3-11D0-AD71-00C04FD8FDFF +IWbemClassObjectEx|0E130F89-81D9-4386-B3BE-092651D04588 +IWbemComBinding|974CAB5F-D7FD-4C52-958F-E3D94D6CB505 +IWbemConnection|180D6598-E042-4B71-B0A2-6E2D16DAF293 +IWbemCreateSecondaryStub|6468FE15-412D-11D3-B350-00104BCC4B4A +IWbemDecorator|A658B5D6-021D-11D1-AD74-00C04FD8FDFF +IWbemDecoupledEventProviderLocator|00B0204A-EC79-11D2-9CB7-00105A1F4801 +IWbemDecoupledEventProvider|BF9AD5BE-F0FB-11D2-9CC2-00105A1F4801 +IWbemDecoupledEventSinkLocator|4875DE77-E623-11D2-9CB3-00105A1F4801 +IWbemDecoupledEventSink|CD94EBF2-E622-11D2-9CB3-00105A1F4801 +IWbemEventConsumerProviderEx|17CF534A-D8A3-4AD0-AC92-5E3D01717151 +IWbemEventProviderRequirements|755F9DA7-7508-11D1-AD94-00C04FD8FDFF +IWbemEventProvider|E245105A-B06E-11D0-AD61-00C04FD8FDFF +IWbemEventSink|E2451059-B06E-11D0-AD61-00C04FD8FDFF +IWbemEventSubsystem_m4|A553F3F0-3805-11D0-B6B2-00AA003240C7 +IWbemEventSubsystem|E245107A-B06E-11D0-AD61-00C04FD8FDFF +IWbemFetchSmartEnum|1C1C45EE-4395-11D2-B60B-00104B703EFD +IWbemFetchSmartMultiTarget|37196B39-CCCF-11D2-B35C-00105A1F8177 +IWbemFilterProxy|60E512D4-C47B-11D2-B338-00105A1F4AAF +IWbemFilterProxy|6C19BE33-7500-11D1-AD94-00C04FD8FDFF +IWbemFilterServices|E2451056-B06E-11D0-AD61-00C04FD8FDFF +IWbemFilterStub|6C19BE34-7500-11D1-AD94-00C04FD8FDFF +IWbemFilter|E2451055-B06E-11D0-AD61-00C04FD8FDFF +IWbemInitComBinding|B4AF2F3C-5FE3-405E-8A9F-D275E3079F6D +IWbemInternalServices|61D629E4-E546-11D2-B33A-00105A1F4AAF +IWbemLifeControl|A658B6D6-021D-11D1-AD74-00C04FD8FDFF +IWbemLocalFilterProxy|DDDAA3DC-2907-41AD-9E74-A91B5AF092D4 +IWbemLoginClientID|D4781CD6-E5D3-44DF-AD94-930EFE48A887 +IWbemLoginHelper|541679AB-2E5F-11D3-B34E-00104BCC4B4A +IWbemMetaData|6C19BE32-7500-11D1-AD94-00C04FD8FDFF +IWbemMultiFilter|10CD7C50-C03B-11D0-AD64-00C04FD8FDFF +IWbemMultiTarget|755F9DA6-7508-11D1-AD94-00C04FD8FDFF +IWbemObjectInternals|7A7EC9AE-11D6-11D2-B5F9-00104B703EFD +IWbemObjectSinkEx|DD0BE256-50DC-48A8-9866-B559F279D0F6 +IWbemParse|D36B512C-C03A-11D0-AD64-00C04FD8FDFF +IWbemPropertyList|D36B512A-C03A-11D0-AD64-00C04FD8FDFF +IWbemPropertySource|E2451054-B06E-11D0-AD61-00C04FD8FDFF +IWbemProviderInit|A69587BA-D3D4-4013-8015-88F429C8FB74 +IWbemQl1Filter|E245105C-B06E-11D0-AD61-00C04FD8FDFF +IWbemRawObjectSink|E2461059-B06E-11D0-AD61-00C04FD8FDFF +IWbemRawSdAccessor|C1E2D759-CABD-11D3-A11B-00105A1F515A +IWbemRefreshingServices|2C9273E0-1DC3-11D3-B364-00105A1F8177 +IWbemRefreshingServices|F72CACF8-57D9-11D1-AD87-00C04FD8FDFF +IWbemRemoteRefresher|00B87752-57DA-11D1-AD87-00C04FD8FDFF +IWbemRemoteRefresher|F1E9C5B2-F59B-11D2-B362-00105A1F8177 +IWbemRequirementChangeSink|E2451058-B06E-11D0-AD61-00C04FD8FDFF +IWbemSecureObjectSink|75ABD540-F492-4161-86A5-37FC8898F69E +IWbemServicesEx|6D54E7AD-7583-4D53-BC14-CE2678F73DB3 +IWbemServices|0EFA6E54-F313-405D-B5D8-830A914F6496 +IWbemSmartMultiTarget|37196B38-CCCF-11D2-B35C-00105A1F8177 +IWbemTokenCache|B1EB126B-4A5E-4848-9E6A-5A513DC7F57A +IWbemToken|6603D042-E217-45D7-B706-B07EC7C06490 +IWbemUnloadingControl|504E6FE4-DFCD-11D1-ADB4-00C04FD8FDFF +IWbemWCOSmartEnum|423EC01E-2E35-11D2-B604-00104B703EFD +IWbemXMLConvertor|FA8D73D7-CD4E-11D3-93FC-00805F853771 +IWbemXMLOperationsHandler|FA8D73D6-CD4E-11D3-93FC-00805F853771 +IWebAdminHelper|F6052B92-2BB6-11D1-BFFA-00C04FC307BD +IWebGate|3724B9A0-9503-11D1-B86A-00A0C90DC849 +IWebSink|680C64B1-8DA2-4399-BF4B-E94C1E52983E +IWebViewFolderIcon2|224AFAC1-3145-11D2-A1D3-00A0C9A63FD0 +IWebViewFolderIcon3|7E20114A-7DB7-4E57-B03C-5CCB8C2B85E2 +IWebViewFolderIcon|99DB2085-323A-11D2-A1D4-00A0C9A63FD0 +IWebView|BCFD624C-705A-11D2-A2AF-00C04FC30871 +IWhqlObj|045C352A-C665-4862-B6F4-21B148BE642B +IWiaDevMgrDispatch|F768D350-F9A4-11D1-9A0B-00C04FA36145 +IWiaDeviceInfo|5267FF5E-7CAF-4769-865D-17A25968525E +IWiaDispatchItem|D06D503F-4B71-40F3-94A7-66478F732BC9 +IWiaItemDispatch|F4097433-9E68-11D2-B08A-00C04FA36145 +IWiaItemInternal|B884E681-66BA-4014-AFBF-DCB3BEE45FAA +IWiaPtpVendorExt|D5F0C4B7-7981-4D92-BC1A-D3686BDF2045 +IWia|B10BA1BC-3713-4EC0-8EEA-690EBD2CED8A +IWin32Handle|8291B2FA-AC2D-11D3-BBFF-00C04FC2D5D5 +IWinHttpRequestEvents|CFF7BD4C-6689-4BBE-91C2-0F559E8B88A7 +IWinHttpRequestEvents|F97F4E15-B787-4212-80D1-D380CBBF982E +IWinHttpRequest|016FE2EC-B2C8-45F8-B23B-39E53A75396B +IWinHttpRequest|06F29373-5C5A-4B54-B025-6EF1BF8ABF0E +IWinHttpTest|CE3AA519-F3AB-4E9E-88CC-B4FEC3D326CF +IWinmgmtMofCompiler|C10B4772-4DA0-11D2-A2F5-00C04F86FB7D +IWirelessSnapInDataObject|DDD146DB-00A1-11D2-8429-006008960A34 +IWizardPage|E61BE992-7B4C-11D2-97DB-00104B880587 +IWizardProvider|A9A3C5A3-441F-11D2-988E-00A0C925F917 +IWmRgSrv|29822AB9-F302-11D0-9953-00C04FD919C1 +IWmiDbBackupRestore|843180D9-8489-42D7-BB07-3A5D91818E2E +IWmiDbBatchSession|0BC53E39-DD83-11D2-9217-00AA001F98B5 +IWmiDbController|2AF77343-DD7B-11D2-9217-00AA001F98B5 +IWmiDbHandle|0BC53E37-DD83-11D2-9217-00AA001F98B5 +IWmiDbIterator|2380C7E0-E14B-11D2-9220-00AA001F98B5 +IWmiDbSessionEx|4B3CCA15-0E03-44CB-9B7A-822F9FAF6EC0 +IWmiDbSession|2AF77345-DD7B-11D2-9217-00AA001F98B5 +IWmiEventSource|87A5AD68-A38A-43EF-ACA9-EFE910E5D24C +IWmiGpoHelper|602C65DA-AC2C-4CA3-ABD3-0F8C1275945A +IWmiMessageMultiSendReceive|0D1EE0A9-A096-43A0-ACF9-CED3D29EDC25 +IWmiMessageQueueManager|35F36F0E-9FD6-483F-94F9-CE0367863376 +IWmiMessageQueueReceiver|4FB36328-BBFF-4F0E-849B-BD520CF161B6 +IWmiMessageQueue|E169E1E3-CC16-4DC2-A5B7-6C165C6B17F8 +IWmiMessageReceiverContext|42D36328-BBFF-4F0E-849B-BD520CF161B6 +IWmiMessageReceiverSink|80CF2156-C5D8-4B04-BB64-3AF723166F53 +IWmiMessageReceiver|B0CFB756-C5D8-4B04-BB64-3AF723166F53 +IWmiMessageSendReceive|5BD9DF3C-6A1C-43C3-91C6-1CDDC0298083 +IWmiMessageSender|3049205F-47FC-4F17-9136-D843AEE1206F +IWmiMessageService|DAFB73A1-6E9E-483A-982A-0E51C039E18E +IWmiMessageTraceSink|A4A01B0C-8B4A-4FCD-91CA-338548A61949 +IWmiObjectAccessFactory|5BD1233C-6A1C-43C3-91C6-1CDDC0298083 +IWmiObjectAccess|5BD3213C-6A1C-43C3-91C6-1CDDC0298083 +IWmiObjectMarshal|31C80872-1221-4907-BCB1-9BA58BE7847A +IWmiSecurityHelper|2FD73A3B-64B3-480D-AEE9-54469D77123E +IWmiSinkDemultiplexor|A9A8F102-71CC-4C72-BC16-48E2CC917ADC +IWmiXMLEnumWbemClassObject|BB31240F-D9DC-11D3-93FC-00805F853771 +IWmiXMLTranslator|5D7B2A7C-A4E0-11D1-8AE9-00600806D9B6 +IWmiXMLTransport|2CA700A4-9E23-11D3-93EF-00805F853771 +IWmiXMLWbemServices|BB31240E-D9DC-11D3-93FC-00805F853771 +IWorkNode|788C8A12-3497-11D3-8AE8-00A0C9AFE114 +IWrapperInfo|5052F924-7AB8-11D3-B93F-00C04F990176 +IWsbCollectable|9C7D6F0A-1562-11D0-81AC-00A0C91180F2 +IWsbCollection|9C7D6F0F-1562-11D0-81AC-00A0C91180F2 +IWsbCreateLocalObject|EF5207D0-8C0B-11D0-9E39-00A0C916F120 +IWsbDbEntityPriv|F16476FD-BF20-442A-84EB-5CEA9462E81D +IWsbDbEntity|FC7FB18F-F497-47A6-A28F-7CC4BFECAA5E +IWsbDbKeyPriv|5FD6B1D4-6A43-11D0-9905-00A0C9058BF6 +IWsbDbKey|46CE9EDA-447C-11D0-98FC-00A0C9058BF6 +IWsbDbPriv|5FD6B1D1-6A43-11D0-9905-00A0C9058BF6 +IWsbDbSessionPriv|C8DA1798-A48C-458C-B597-F497AB046A38 +IWsbDbSession|01973831-E996-11D0-9928-00A0C9058BF6 +IWsbDbSysPriv|8A2612A9-2466-470E-AD46-059318CE8C4E +IWsbDbSys|F2608980-0A45-47B4-B110-37EA59F67C47 +IWsbDb|D7A42F4A-117C-47A3-9C30-92D63A4919E4 +IWsbEnumEx|F5A3AC60-9993-11D0-81E7-00A0C91180F2 +IWsbEnum|9C7D6F14-1562-11D0-81AC-00A0C91180F2 +IWsbGuid|A0FF1F41-237A-11D0-81BA-00A0C91180F2 +IWsbIndexedCollection|A5B69200-214B-11D0-81B7-00A0C91180F2 +IWsbPersistStream|C4D14AA2-79EE-11D0-9909-00A0C9058BF6 +IWsbPersistable|5BF46531-282D-11D0-81BE-00A0C91180F2 +IWsbServer|58A4F966-55BE-4D62-892E-43A9978BF4C2 +IWsbString|DB35D731-21E9-11D0-81B8-00A0C91180F2 +IWsbTestable|05342021-25D8-11D0-81BB-00A0C91180F2 +IWsbTrace|0AF2DA10-7DD7-11D0-9E33-00A0C916F120 +IXMLDocumentNotify|53BE4F42-3602-11D2-801B-0000F87A6CDF +IXMLNodeFactory|D242361F-51A0-11D2-9CAF-0060B0EC3D39 +IXMLNodeSource|D242361D-51A0-11D2-9CAF-0060B0EC3D39 +IXMLParser|D242361E-51A0-11D2-9CAF-0060B0EC3D39 +IXMLWMIConverter|98775469-904D-45CE-9718-AF89F6A24BEE +IXMLWbemConvertor|EDB74710-4EC6-4CDA-85CB-8CFD218B03D6 +IXactObj|E7389AAF-43AA-400C-9113-DDA4DD844CCA +IXml2Dex|18C628ED-962A-11D2-8D08-00A0C9441E20 +IZaxxonPlayer|27164F5A-1313-11D3-8705-00C04FB16A21 +I_dxj_D3DX8|3AC50043-CF82-4C44-862E-B206B4F03301 +I_dxj_DIEnumDeviceObjects|9F76FA08-8E92-11D1-8808-00C04FC2C602 +I_dxj_DIEnumDevices8|819D20C4-8AD2-11D3-AC85-00C04FC2C602 +I_dxj_DPVoiceEvent|26AE5141-8010-46EA-861C-F9FC0F8B61D9 +I_dxj_DSEnum|9F76FB07-8E92-11D1-8808-00C04FC2C603 +I_dxj_DirectInput8|819D20C1-8AD2-11D3-AC85-00C04FC2C602 +I_dxj_DirectInputDevice8|819D20C3-8AD2-11D3-AC85-00C04FC2C602 +I_dxj_DirectInputDeviceInstance8|819D20C2-8AD2-11D3-AC85-00C04FC2C602 +I_dxj_DirectInputDeviceObjectInstance|9F76FA05-8E92-11D1-8808-00C04FC2C602 +I_dxj_DirectInputEffect|BCAA7DA9-F7EF-11D2-93FD-00C04FC2C602 +I_dxj_DirectInputEnumEffects|BCAA7DAA-F7EF-11D2-93FD-00C04FC2C602 +I_dxj_DirectInputFileEffects8|952E7826-33B4-4F62-92D4-AB7F15D26748 +I_dxj_DirectMusicAudioPath|A4A8597A-BA7A-4648-B321-1701598844D8 +I_dxj_DirectMusicBand|FAFA35A3-8B72-11D2-90B2-00C04FC2C603 +I_dxj_DirectMusicChordMap|FAFA35A5-8B72-11D2-90B2-00C04FC2C603 +I_dxj_DirectMusicCollection|FAFA35A8-8B72-11D2-90B2-00C04FC2C603 +I_dxj_DirectMusicComposer|FAFA35A2-8B72-11D2-90B2-00C04FC2C603 +I_dxj_DirectMusicLoader|FAFA35A0-8B72-11D2-90B2-00C04FC2C603 +I_dxj_DirectMusicPerformance|FAFA35A7-8B72-11D2-90B2-00C04FC2C603 +I_dxj_DirectMusicSegmentState|FAFA35A6-8B72-11D2-90B2-00C04FC2C603 +I_dxj_DirectMusicSegment|FAFA35A1-8B72-11D2-90B2-00C04FC2C603 +I_dxj_DirectMusicSong|7D140634-A5B2-46CC-A8C0-F51BC475BF5D +I_dxj_DirectMusicStyle|FAFA35A4-8B72-11D2-90B2-00C04FC2C603 +I_dxj_DirectPlayAddress|ECA8BD2A-7154-4B23-904B-61FF852A906B +I_dxj_DirectPlayClient|3F6521E5-94BC-4A7A-A049-3D199EB59E72 +I_dxj_DirectPlayEvent|F9DCCD1D-E6B9-45ED-B3E2-C32414C71FA4 +I_dxj_DirectPlayLobbiedApplication|EF390476-6EA0-4AD3-9EA3-768DCB68038D +I_dxj_DirectPlayLobbyClient|14716737-3005-4758-896F-B48D001929A5 +I_dxj_DirectPlayLobbyEvent|F794A01F-2A0D-46A8-9CEF-D5678A413BEF +I_dxj_DirectPlayPeer|7C34602A-7B81-4C6D-9533-658F2D471EFC +I_dxj_DirectPlayServer|7584BBA4-1B39-4DCD-A334-D168CBB5A915 +I_dxj_DirectPlayVoiceClient|9F76FF0F-8E92-11D1-1515-00C04FC2C312 +I_dxj_DirectPlayVoiceServer|9F76FF0F-8E92-11D1-1515-00C04FC2C313 +I_dxj_DirectPlayVoiceSetup|9F76FF0F-8E92-11D1-1515-00C04FC2C314 +I_dxj_DirectSound3dBuffer|9F76FB03-8E92-11D1-8808-00C04FC2C603 +I_dxj_DirectSound3dListener|9F76FB02-8E92-11D1-8808-00C04FC2C603 +I_dxj_DirectSoundBuffer|9F76FB01-8E92-11D1-8808-00C04FC2C603 +I_dxj_DirectSoundCaptureBuffer|9F76FB05-8E92-11D1-8808-00C04FC2C603 +I_dxj_DirectSoundCapture|9F76FB04-8E92-11D1-8808-00C04FC2C603 +I_dxj_DirectSoundFXChorus|E53AC43D-651F-400D-B01F-E8A14512C6D6 +I_dxj_DirectSoundFXCompressor|F902315C-D34A-4133-BD65-4069230811DD +I_dxj_DirectSoundFXDistortion|3CE4D8D6-B301-49B4-9C63-9A989CA40388 +I_dxj_DirectSoundFXEcho|E852583A-526F-4875-842B-8DB091A20FBC +I_dxj_DirectSoundFXFlanger|9F9C7BB0-F4EA-472B-89A8-36FAADBCE26E +I_dxj_DirectSoundFXGargle|B9B28963-4ADC-44F0-873F-9955244C9BD0 +I_dxj_DirectSoundFXI3DL2Reverb|542C5D87-47FC-457B-859A-1A45BBF71A63 +I_dxj_DirectSoundFXI3DL2Source|F24E6886-C3CC-4A57-A1E4-860314BDF8D6 +I_dxj_DirectSoundFXParamEQ|CD83B9C1-B4E9-416B-97F5-0642DC952301 +I_dxj_DirectSoundFXSend|E307FA2B-1305-403B-A769-2EF053BEAA3E +I_dxj_DirectSoundFXWavesReverb|A4D4D800-94BE-4C33-9A0E-EBA0696A63A9 +I_dxj_DirectSoundPrimaryBuffer|4E6F040E-03FB-4BA1-897C-2265700D5368 +I_dxj_DirectSound|9F76FB00-8E92-11D1-8808-00C04FC2C603 +I_dxj_DirectX8|E7FF1301-96A5-11D3-AC85-00C04FC2C602 +I_dxj_DirectXEvent8|D1CA9B18-9ED2-43B5-8759-7A5C892D4C5C +I_dxj_DirectXFileBinary|E7FF12E9-96A5-11D3-AC85-00C04FC2C602 +I_dxj_DirectXFileData|E7FF12E7-96A5-11D3-AC85-00C04FC2C602 +I_dxj_DirectXFileEnum|E7FF12E4-96A5-11D3-AC85-00C04FC2C602 +I_dxj_DirectXFileObject|E7FF12E6-96A5-11D3-AC85-00C04FC2C602 +I_dxj_DirectXFileReference|E7FF12E8-96A5-11D3-AC85-00C04FC2C602 +I_dxj_DirectXFileSave|E7FF12E5-96A5-11D3-AC85-00C04FC2C602 +I_dxj_DirectXFile|E7FF12E3-96A5-11D3-AC85-00C04FC2C602 +Iasphelp|3E4D4F1B-2AEE-11D1-9D3D-00C04FC30DF6 +Icaddroot|8D80F65F-7404-44A2-99DA-E595796110E6 +IcheckTest|AE4FF85E-BF7A-4B8E-9791-0DA17559573B +IcpECB|38912EC2-E0C9-11CF-B898-0080C7394688 +Idvdopt|D549AF1E-3799-4D96-9475-E22610E0718D +IeXdiARMContext|47486F67-6461-6C65-5844-495341524D43 +IeXdiClientNotifyMemChg|47486F67-6461-6C65-5844-49434E4D4300 +IeXdiClientNotifyRunChg|47486F67-6461-6C65-5844-49434E525343 +IeXdiCodeBreakpoint|47486F67-6461-6C65-5844-495342507401 +IeXdiDataBreakpoint|47486F67-6461-6C65-5844-495357507400 +IeXdiEnumCodeBreakpoint|47486F67-6461-6C65-5844-495345425074 +IeXdiEnumDataBreakpoint|47486F67-6461-6C65-5844-495345575074 +IeXdiMIPSContext|47486F67-6461-6C65-5844-49534D495043 +IeXdiPPCContext|47486F67-6461-6C65-5844-495350504343 +IeXdiSHXContext|47486F67-6461-6C65-5844-495353475843 +IeXdiServer|47486F67-6461-6C65-5844-495352435201 +IeXdiX86Context|47486F67-6461-6C65-5844-495358383643 +IeXdiX86_64Context|4795B125-6CDE-4E76-B8D3-D5ED69ECE739 +Internal_IEnumWbemClassObject|AC9EA02A-2C8A-4ACD-B562-D7E8EBEE8E8E +Internal_IWbemCallResult|E1CBFF9F-4DB9-4264-80D1-13EC5D091FD0 +Internal_IWbemEventConsumerProviderEx|88F3781C-6902-4647-9A6B-A74F450AF861 +Internal_IWbemEventConsumerProvider|854D745C-6742-42C0-8BB9-01EC466B6E87 +Internal_IWbemEventProviderQuerySink|8A0DC377-A9D3-41CB-BD69-AE1FDAF2DC68 +Internal_IWbemEventProviderSecurity|DF2373F5-EFB2-475C-AD58-3102D61967D4 +Internal_IWbemEventProvider|FD450835-CF1B-4C87-9FD2-5E0D42FDE081 +Internal_IWbemObjectSink|2DB9FA90-9973-46CF-B310-9865B644699D +Internal_IWbemPropertyProvider|11CAA957-4E80-474E-A819-7FD72148ADA9 +Internal_IWbemProviderIdentity|2B322B6E-A9DF-44E3-97BF-259E3583FDA4 +Internal_IWbemProviderInit|6919DD07-1637-4611-A8A7-C16FAC5B2D53 +Internal_IWbemServices|F50A28CF-5C9C-4F7E-9D80-E25E16E18C59 +Internal_IWbemUnboundObjectSink|A210BFE9-C9F7-4919-B114-0D98B3D5341E +Internal_IWmiProviderConfiguration|0FC8C622-1728-4149-A57F-AD19D0970710 +Iprturl|7586B34D-EC08-11D0-A466-00C04FC30DF6 +Iqry|A5C8AA00-F17A-11D0-91F3-00AA00C148BE +Ireq|583BDCAD-E7F7-11D0-91E8-00AA00C148BE +Ismapi|11685FCA-2787-4235-ACE5-AA92AF5DD900 +Iss|C99F41AF-08FC-11D1-922A-00AA00C148BE +Ivxdcontrol|7E0529B7-AC3E-11D3-BC00-00C04FC2D5D5 +_ISpCFGPhraseBuilder|1B7ECC24-EC50-4642-A212-20F12E02786F +_ISpRecoCtxtPrivate|1EDAFA51-05B6-4FA6-A90C-0BE043B0002B +_ISpRecoMaster|4E204149-3828-4A29-8990-A39598D2BD6D +_IUmiDsWrapper|F8604208-0F90-4D33-B9D4-E00540DBE018 +_IUmiErrorObject|7B1A99AC-E164-4D25-8DC0-CC4CA89F1BA1 +_IUmiSvcExWrapper|D83B6FC3-8489-478F-BC4A-AD0C9E375ED6 +_IWbemConfigureRefreshingSvcs|25411283-46FC-4326-8DF2-FF5D34B2DFEF +_IWbemEnumMarshaling|368732C2-80D8-403E-854B-1B2BAFB9842C +_IWbemFetchRefresherMgr|6963B029-B969-40AA-9180-2B2F84075973 +_IWbemRefresherMgr|B60EF4F1-A411-462B-B51E-477CBDBB90B4 +_IWbemUMIContextWrapper|90F22E4D-3266-4EAC-A1B1-837AF5FEDEDD +_IWbemUMIObjectWrapper|91DF7ACE-7A22-4CD7-99C6-23B713CDF47C +_IWmiArbitratedQuery|41074D24-7C24-4C4B-B8E8-94DA3466FCCD +_IWmiArbitratee|43F684C8-3A13-4FAB-89D8-D47C60F83715 +_IWmiArbitrator|67429ED7-F52F-4773-B9BB-30302B0270DE +_IWmiArbitrator|F99A3EC1-8329-4D03-AB7A-797410BCC98E +_IWmiArray|D471B667-6CF7-4A55-9B29-4F1E9FC06C72 +_IWmiCache|A784EB18-CF32-49C7-893A-D9889D234CDB +_IWmiCallSec|B19F2CE0-5DF4-40E5-8B1D-DC5F3CF39D65 +_IWmiConnectionHandle|52631080-AB99-46F4-B3C4-DA127B94BED5 +_IWmiContext|1999CB72-C88D-40A3-A5AA-35EAED377E61 +_IWmiCoreHandle|AC062F20-9935-4AAE-98EB-0532FB17147A +_IWmiCoreServices|5FC92893-A9BE-475F-BF9E-CF50EEA1C958 +_IWmiCoreWriteHook|76CC24D6-E776-42BC-9A09-025920F4F486 +_IWmiDecorator|7698DAB9-9327-4FCE-8B0D-3A276CF2D6E3 +_IWmiDynamicPropertyResolver|BAC6B661-167E-4957-AD77-286AB256585E +_IWmiESS|C0E3EEB3-B2CE-4A6A-9284-F38475CEE099 +_IWmiErrorObject|2EAA0B00-3E3C-4472-8273-67B150267ABB +_IWmiFinalizer|FE4E94E6-7F40-4447-8240-F154412D9CD6 +_IWmiFreeFormObject|28E1AE0A-20EA-406C-BDB6-011B76E0DDE9 +_IWmiObjectAccessEx|235FE06E-00E6-4990-A624-2D4DCD5EB63A +_IWmiObjectFactory|855A71D0-E5CD-46DE-9707-17F2BD1ED694 +_IWmiObject|B308C72B-7FEA-4C98-A459-7F5FCC3ED39F +_IWmiProvSSSink|2A504CA2-CA90-4731-87BC-6E99CA2019AF +_IWmiProvSS|E8107BDF-BAAF-4C7C-BB5F-9D732E8D8F07 +_IWmiProviderAbnormalShutdown|48FF3109-A366-4B56-B340-01FAE758BA64 +_IWmiProviderAssociatorsHelper|E7174AED-B55B-42F9-B322-D79F49921012 +_IWmiProviderCache|F0E4EDDE-475A-498A-93D7-D4347F68A8F3 +_IWmiProviderConfiguration|6B3FC272-BF37-4968-933A-6DF9222A2607 +_IWmiProviderFactoryInitialize|06413D98-405C-4A5A-8D6F-19B8B7C6ACF7 +_IWmiProviderFactory|21CD80A2-B305-4F37-9D4C-4534A8D9B568 +_IWmiProviderHost|07435309-D440-41B7-83F3-EB82DB6C622F +_IWmiProviderInitialize|5FBA5051-3124-4112-B723-46BFBAF1D622 +_IWmiProviderLoad|484E3ECE-1F81-4591-B9D4-943BA13B609D +_IWmiProviderQuota|EB658B8A-7A64-4DDC-9B8D-A92610DB0206 +_IWmiProviderSite|FEC1B0AC-5808-4033-A915-C0185934581E +_IWmiProviderStack|B1B55910-8BA0-47A5-A16E-2B733B1D987C +_IWmiProviderSubsystemRegistrar|41AA40E6-2FBA-4E80-ADE9-34306567206D +_IWmiQuery|69A4735B-6328-436B-8D7F-0A641559C585 +_IWmiThreadSecHandle|DC9A2BF5-C244-4A01-9206-F28CD51A3C3D +_IWmiUserHandle|6D8D984B-9965-4023-921A-610B348EE54E +_PropertyBag|4495AD01-C993-11D1-A3E4-00A0C90AEA82 +__CreateEnumWbemClassObject|0D43FB20-2032-11D3-95A7-00C04F4F5B7E +// Manual extraction +IStdIdentity|0000001b-0000-0000-c000-000000000046 +IProxyServerIdentity|5524fe34-8da7-40a8-8165-e8b37a8b4a4b +IProxyManager|00000008-0000-0000-c000-000000000046 \ No newline at end of file diff --git a/ctypes_generation/definitions/simple_types.txt b/ctypes_generation/definitions/simple_types.txt index bbbf8e08..9719a7fb 100644 --- a/ctypes_generation/definitions/simple_types.txt +++ b/ctypes_generation/definitions/simple_types.txt @@ -22,6 +22,8 @@ KAFFINITY = ULONG_PTR KPRIORITY = LONG INTERNET_PORT = WORD + + CHAR = c_char PCHAR = POINTER(CHAR) UCHAR = c_char @@ -38,6 +40,7 @@ LPCH = c_char_p LPWCH = c_wchar BSTR = c_wchar_p OLECHAR = c_wchar +SNB = POINTER(POINTER(OLECHAR)) POLECHAR = c_wchar_p PZZWSTR = c_wchar_p PUCHAR = POINTER(UCHAR) @@ -74,7 +77,7 @@ ALG_ID = UINT DISPID = LONG MEMBERID = DISPID LRESULT = LONG_PTR -LPUNKNOWN = POINTER(PVOID) +LPUNKNOWN = PVOID LPPOINT = POINTER(POINT) LPRECT = POINTER(RECT) SPC_UUID = BYTE * 16 @@ -85,6 +88,10 @@ FILEOP_FLAGS = WORD NET_API_STATUS = DWORD +// 2 custom PFW defintions for bitness-forces structures +PVOID32 = DWORD +PVOID64 = DWORD64 + NCRYPT_HANDLE = ULONG_PTR NCRYPT_PROV_HANDLE = ULONG_PTR NCRYPT_KEY_HANDLE = ULONG_PTR @@ -202,6 +209,16 @@ RPCOLEDATAREP = ULONG HREFTYPE = DWORD SFGAOF = ULONG +ID = ULONG64 +MID = ID // Machine Identifier +OXID = ID // Object Exporter Identifier +OID = ID // Object Identifer +SETID = ID // Ping Set Identifier + +// Interface pointer definition +LPSTREAM = PVOID # Istream* + + /* SOCKET STUFF */ GROUP = UINT diff --git a/ctypes_generation/definitions/structures/alpc.txt b/ctypes_generation/definitions/structures/alpc.txt index 47d7b6ff..35cfae3b 100644 --- a/ctypes_generation/definitions/structures/alpc.txt +++ b/ctypes_generation/definitions/structures/alpc.txt @@ -291,38 +291,6 @@ typedef struct _REMOTE_PORT_VIEW { PVOID ViewBase; } REMOTE_PORT_VIEW, *PREMOTE_PORT_VIEW; - typedef struct tagCOMVERSION - { - USHORT MajorVersion; - USHORT MinorVersion; - } COMVERSION; - -typedef struct tagORPCTHIS { - COMVERSION version; - ULONG flags; - ULONG reserved1; - GUID cid; - PVOID extensions; // [unique] ORPC_EXTENT_ARRAY *extensions; - } ORPCTHIS; - - -typedef struct __MIDL_XmitDefs_0001 { - GUID asyncOperationId; - ULONG64 oxidClientProcessNA; - GUID originalClientLogicalThreadId; - ULONG64 uClientCausalityTraceId; -} MIDL_XmitDefs_0001; - -typedef struct _LOCALTHIS { - DWORD dwFlags; - DWORD dwClientThread; - GUID passthroughTraceActivity; - GUID callTraceActivity; - MIDL_XmitDefs_0001 asyncRequestBlock; - DWORD reserved; - PVOID pTouchedAstaArray; // Ptr32 __MIDL_XmitDefs_0002 -} LOCALTHIS; - diff --git a/ctypes_generation/definitions/structures/com.txt b/ctypes_generation/definitions/structures/com.txt index a2de6c8f..0d9341e8 100644 --- a/ctypes_generation/definitions/structures/com.txt +++ b/ctypes_generation/definitions/structures/com.txt @@ -153,10 +153,3 @@ typedef struct __tagVARIANT { _ANON_TMP_variant_sub_union _VARIANT_NAME_3; } _tagVARIANT, VARIANT, VARIANTARG, *LPVARIANT, *LPVARIANTARG; - -typedef enum tagCOMSD { - SD_LAUNCHPERMISSIONS = 0, - SD_ACCESSPERMISSIONS = 1, - SD_LAUNCHRESTRICTIONS = 2, - SD_ACCESSRESTRICTIONS = 3 -} COMSD; \ No newline at end of file diff --git a/ctypes_generation/definitions/structures/combase.txt b/ctypes_generation/definitions/structures/combase.txt new file mode 100644 index 00000000..5f8615bc --- /dev/null +++ b/ctypes_generation/definitions/structures/combase.txt @@ -0,0 +1,427 @@ + +typedef enum tagCOMSD { + SD_LAUNCHPERMISSIONS = 0, + SD_ACCESSPERMISSIONS = 1, + SD_LAUNCHRESTRICTIONS = 2, + SD_ACCESSRESTRICTIONS = 3 +} COMSD; + +typedef struct tagOpaqueData +{ + GUID guid; + ULONG dataLength; + ULONG reserved1; + ULONG reserved2; + /*[size_is((dataLength+7)&~7)]*/ BYTE *data; +} OpaqueData; + + +typedef struct tagSTDOBJREF +{ + ULONG flags; // STDOBJREF flags (see above) + ULONG cPublicRefs; // count of references passed + OXID oxid; // oxid of server with this oid + OID oid; // oid of object with this ipid + IPID ipid; // ipid of Interface +} STDOBJREF; + + +typedef struct tagDATAELEMENT + { + GUID dataID; + ULONG cbSize; + ULONG cbRounded; + BYTE Data[ 1 ]; + } DATAELEMENT, *PDATAELEMENT; + +typedef struct tagOBJREFDATA + { + ULONG nElms; + PDATAELEMENT *ppElmArray; + } OBJREFDATA; + +typedef struct tagDUALSTRINGARRAY +{ + USHORT wNumEntries; // Number of entries in array. + USHORT wSecurityOffset; // Offset of security info. + // The array contains two parts, a set of STRINGBINDINGs + // and a set of SECURITYBINDINGs. Each set is terminated by an + // extra zero. The shortest array contains four zeros. + /*[size_is(wNumEntries)]*/ USHORT aStringArray[1]; +} DUALSTRINGARRAY; + +typedef struct tagOBJREF + { + ULONG signature; + ULONG flags; + GUID iid; + union + { + struct + { + STDOBJREF std; + DUALSTRINGARRAY saResAddr; + } u_standard; + struct + { + STDOBJREF std; + CLSID clsid; + DUALSTRINGARRAY saResAddr; + } u_handler; + struct + { + CLSID clsid; + ULONG cbExtension; + ULONG size; + BYTE *pData; + } u_custom; + struct + { + STDOBJREF std; + OBJREFDATA *pORData; + DUALSTRINGARRAY saResAddr; + } u_extended; + } u_objref; + } OBJREF; + + + + +typedef struct tagCOMVERSION +{ + USHORT MajorVersion; + USHORT MinorVersion; +} COMVERSION; + +typedef struct tagORPC_EXTENT { + _GUID id; + ULONG size; + BYTE data[1]; +} ORPC_EXTENT, PORPC_EXTENT; + +typedef struct tagORPC_EXTENT_ARRAY { + ULONG size; + ULONG reserved; + PORPC_EXTENT *extent; +} ORPC_EXTENT_ARRAY; + +typedef struct tagORPCTHIS { + COMVERSION version; + ULONG flags; + ULONG reserved1; + GUID cid; + PVOID extensions; // [unique] ORPC_EXTENT_ARRAY *extensions; + } ORPCTHIS; + +typedef struct tagORPCTHIS32 { + COMVERSION version; + ULONG flags; + ULONG reserved1; + GUID cid; + PVOID32 extensions; // [unique] ORPC_EXTENT_ARRAY *extensions; + } ORPCTHIS32; + +typedef struct tagOXID_INFO +{ + DWORD dwTid; // thread id of object exporter + DWORD dwPid; // process id of object exporter + DWORD dwAuthnHint; // authentication hint + COMVERSION version; // COM Version of server + IPID ipidRemUnknown; // IRemUnknown IPID for object exporter + DWORD dwFlags; // miscellaneous flags + /*[unique]*/ DUALSTRINGARRAY *psa; // protocol and security info +} OXID_INFO; + +enum tagCPFLAGS +{ + CPFLAG_NONE = 0, + CPFLAG_PROPAGATE = 0x1, + CPFLAG_EXPOSE = 0x2, + CPFLAG_ENVOY = 0x4, + CPFLAG_MONITORSTUB = 0x8, + CPFLAG_MONITORPROXY = 0x10, + CPFLAG_DONTCOMPARE = 0x20 +} CPFLAGS; + +typedef struct tagContextProperty +{ + GUID policyId; + CPFLAGS flags; + PVOID pUnk; // IUnknown +} ContextProperty; + +typedef struct _PRIV_SCM_INFO +{ + LONG Apartment; + WCHAR *pwszWinstaDesktop; + ULONG64 ProcessSignature; + WCHAR *pEnvBlock; + DWORD EnvBlockLength; +} PRIV_SCM_INFO; + +typedef struct _REMOTE_REQUEST_SCM_INFO +{ + DWORD ClientImpLevel; + USHORT cRequestedProtseqs; + USHORT *pRequestedProtseqs; +} REMOTE_REQUEST_SCM_INFO; + +// From: https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-dcom/21781a97-cb45-4655-82b0-02c4a1584603 + typedef struct tagMInterfacePointer { + ULONG ulCntData; + /*[size_is(ulCntData)]*/ BYTE abData[1]; + } MInterfacePointer, *PMInterfacePointer; + + +typedef enum tagACTIVATION_STAGE +{ + CLIENT_CONTEXT_STAGE = 1, + CLIENT_MACHINE_STAGE = 2, + SERVER_MACHINE_STAGE = 3, + SERVER_PROCESS_STAGE = 4, + SERVER_CONTEXT_STAGE = 5 +} ACTIVATION_STAGE; + +typedef enum tagThreadingModel + { + ApartmentThreaded = 0, + FreeThreaded = 1 , + SingleThreaded = 2 , + BothThreaded = 3 , + NeutralThreaded = 4 +} ThreadingModel; + +typedef enum tagLocalServerType + { + LocalServerType16 = 0, + LocalServerType32 = 1 + } LocalServerType; + + + + +typedef struct tagRPCOLEMESSAGE +{ + PVOID reserved1; + RPCOLEDATAREP dataRepresentation; + PVOID Buffer; + ULONG cbBuffer; + ULONG iMethod; + PVOID reserved2[5]; + ULONG rpcFlags; +} RPCOLEMESSAGE, *PRPCOLEMESSAGE; + +// https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-dcom/1d6a8a54-b115-4148-815a-af0258931948 +typedef struct tagREMQIRESULT +{ + HRESULT hResult; + STDOBJREF std; +} REMQIRESULT, *PREMQIRESULT; + +typedef struct tagREMINTERFACEREF +{ + IPID ipid; + ULONG cPublicRefs; + ULONG cPrivateRefs; +} REMINTERFACEREF; + + +typedef enum tagSTREAM_SEEK { + STREAM_SEEK_SET = 0, + STREAM_SEEK_CUR = 1, + STREAM_SEEK_END = 2 +} STREAM_SEEK; + +typedef enum tagMSHCTX { + MSHCTX_LOCAL = 0, + MSHCTX_NOSHAREDMEM = 1, + MSHCTX_DIFFERENTMACHINE = 2, + MSHCTX_INPROC = 3, + MSHCTX_CROSSCTX = 4, + MSHCTX_CONTAINER +} MSHCTX; + + +typedef struct _PRIV_RESOLVER_INFO_LEGACY + { + OXID OxidServer; + DUALSTRINGARRAY *pServerORBindings; + OXID_INFO OxidInfo; + MID LocalMidOfRemote; + DWORD DllServerModel; + WCHAR *pwszDllServer; + BOOL FoundInROT; +} PRIV_RESOLVER_INFO_LEGACY, *PPRIV_RESOLVER_INFO_LEGACY; + +typedef struct _REMOTE_REPLY_SCM_INFO + { + OXID Oxid; + DUALSTRINGARRAY *pdsaOxidBindings; + IPID ipidRemUnknown; + DWORD authnHint; + COMVERSION serverVersion; + } REMOTE_REPLY_SCM_INFO, *PREMOTE_REPLY_SCM_INFO; + + +typedef struct CONTAINER_EXTENT { + UINT id; + UINT version; + UINT size; + BYTE data[1]; +}; + +typedef struct CONTAINER_EXTENT_ARRAY { + UINT size; + UINT reserved; + CONTAINER_EXTENT *extent; +}; + +typedef struct HSTRING__ { + INT unused; +}; + + +typedef struct CONTAINERVERSION { + UINT version; + UINT64 capabilityFlags; + CONTAINER_EXTENT_ARRAY *extensions; +}; + + +typedef struct _MIDL_ILocalObjectExporter_0007 { + ULONG dwTid; + ULONG dwPid; + ULONG dwAuthnHint; + tagCOMVERSION dcomVersion; + CONTAINERVERSION containerVersion; + _GUID ipidRemUnknown; + ULONG dwFlags; + tagDUALSTRINGARRAY *psa; + _GUID guidProcessIdentifier; + UINT64 processHostId; + INT clientDependencyBehavior; + HSTRING__ *packageFullName; + HSTRING__ *userSid; + HSTRING__ *appcontainerSid; + UINT64 primaryOxid; + _GUID primaryIpidRemUnknown; +} MIDL_ILocalObjectExporter_0007; + + +typedef struct _PRIV_RESOLVER_INFO { + UINT64 OxidServer; + tagDUALSTRINGARRAY *pServerORBindings; + MIDL_ILocalObjectExporter_0007 OxidInfo; + UINT64 LocalMidOfRemote; + INT FoundInROT; +} PRIV_RESOLVER_INFO, *PPRIV_RESOLVER_INFO; + + +typedef struct _MIDL_XmitDefs_0001 { + GUID asyncOperationId; + ULONG64 oxidClientProcessNA; + GUID originalClientLogicalThreadId; + ULONG64 uClientCausalityTraceId; +} MIDL_XmitDefs_0001; + +typedef struct _LOCALTHIS { + DWORD dwFlags; + DWORD dwClientThread; + GUID passthroughTraceActivity; + GUID callTraceActivity; + MIDL_XmitDefs_0001 asyncRequestBlock; + DWORD reserved; + PVOID pTouchedAstaArray; // Ptr32 __MIDL_XmitDefs_0002 +} LOCALTHIS; + +typedef struct _LOCALTHIS32 { + DWORD dwFlags; + DWORD dwClientThread; + GUID passthroughTraceActivity; + GUID callTraceActivity; + MIDL_XmitDefs_0001 asyncRequestBlock; + DWORD reserved; + PVOID32 pTouchedAstaArray; // Ptr32 __MIDL_XmitDefs_0002 +} LOCALTHIS32; + +/* LOCALTHAT & sub structures */ + +typedef struct _MIDL_XmitDefs_0007 { + INT pointOfFailure; + HRESULT hrFailure; + ULONG sizeOfMarshaledErrorInfo; + ULONG reserved; + BYTE *pMarshaledErrorInfo; +}; + +typedef struct _MIDL_XmitDefs_0005 { + ULONG sizeOfMarshaledResults; + ULONG reserved; + BYTE *pMarshaledResults; +}; + +typedef struct _MIDL_XmitDefs_0008 { + INT outcome; + _MIDL_XmitDefs_0005 successDetails; + _MIDL_XmitDefs_0007 failureDetails; +}; + +typedef struct _MIDL_XmitDefs_0010 { + ULONG asyncStatus; + ULONG reserved1; + UINT64 uServerCausalityTraceId; + _GUID completionTraceActivity; + ULONG reserved2; + _MIDL_XmitDefs_0008 *pOutcomeDetails; +}; + +typedef struct CONTAINERTHAT { + UINT64 responseFlags; + _GUID unassignedPassthroughGuid_1; + _GUID unassignedPassthroughGuid_2; + _GUID unassignedPassthroughGuid_3; + _GUID unassignedPassthroughGuid_4; + _GUID reservedGuid_1; + _GUID reservedGuid_2; + _GUID reservedGuid_3; + _GUID reservedGuid_4; + UINT64 unassignedPassthroughUint64_1; + UINT64 unassignedPassthroughUint64_2; + UINT64 unassignedPassthroughUint64_3; + UINT64 unassignedPassthroughUint64_4; + UINT64 marshalingSetId; + UINT64 reservedUint64_2; + UINT64 reservedUint64_3; + UINT64 reservedUint64_4; + UINT reservedUint32; + CONTAINER_EXTENT_ARRAY *extensions; +}; + +typedef struct _LOCALTHAT { + UINT64 marshalingSetId; + ULONG reserved; + _MIDL_XmitDefs_0010 *pAsyncResponseBlock; + CONTAINER_EXTENT *containerErrorInformation; + CONTAINERTHAT *containerPassthroughData; +} LOCALTHAT; + + +typedef struct _LOCALTHAT32 { + UINT64 marshalingSetId; + ULONG reserved; + PVOID32 pAsyncResponseBlock; + PVOID32 containerErrorInformation; + PVOID32 containerPassthroughData; +} LOCALTHAT32; + + +typedef struct tagORPCTHAT { + ULONG flags; + tagORPC_EXTENT_ARRAY *extensions; +} ORPCTHAT; + + +typedef struct ORPCTHAT32 { + ULONG flags; + PVOID32 extensions; // tagORPC_EXTENT_ARRAY tagORPC_EXTENT_ARRAY +} ORPCTHAT32; \ No newline at end of file diff --git a/ctypes_generation/definitions/structures/guid.txt b/ctypes_generation/definitions/structures/guid.txt index f1b95dc9..0f2c81ed 100644 --- a/ctypes_generation/definitions/structures/guid.txt +++ b/ctypes_generation/definitions/structures/guid.txt @@ -5,4 +5,4 @@ typedef struct _GUID { USHORT Data2; USHORT Data3; BYTE Data4[ 8 ]; -} GUID, IID, CLSID, *REFIID, *REFCLSID, *LPGUID, *REFGUID, *LPCLSID, *LPCGUID; \ No newline at end of file +} GUID, IID, CLSID, *REFIID, *REFCLSID, *LPGUID, *REFGUID, *LPCLSID, *LPCGUID, IPID, CID, *REFIPID; \ No newline at end of file diff --git a/ctypes_generation/definitions/structures/symbols.txt b/ctypes_generation/definitions/structures/symbols.txt index 9a21f977..272f180c 100644 --- a/ctypes_generation/definitions/structures/symbols.txt +++ b/ctypes_generation/definitions/structures/symbols.txt @@ -130,7 +130,7 @@ typedef struct _IMAGEHLP_MODULEW64 { WCHAR LoadedImageName[256]; WCHAR LoadedPdbName[256]; DWORD CVSig; - WCHAR *CVData[MAX_PATH * 3]; + WCHAR CVData[MAX_PATH * 3]; // Typo in the documentation which says WCHAR *CVData[MAX_PATH * 3]; DWORD PdbSig; GUID PdbSig70; DWORD PdbAge; diff --git a/ctypes_generation/definitions/structures/winstruct.txt b/ctypes_generation/definitions/structures/winstruct.txt index 12ca82a8..91e26a26 100644 --- a/ctypes_generation/definitions/structures/winstruct.txt +++ b/ctypes_generation/definitions/structures/winstruct.txt @@ -1730,15 +1730,12 @@ typedef struct _OBJECT_ATTRIBUTES { } OBJECT_ATTRIBUTES, *POBJECT_ATTRIBUTES; -typedef union _TMP_UNION_IO_STATUS_BLOCK -{ - NTSTATUS Status; - PVOID Pointer; -}TMP_UNION_IO_STATUS_BLOCK; - typedef struct _IO_STATUS_BLOCK { - TMP_UNION_IO_STATUS_BLOCK DUMMYUNIONNAME; - ULONG_PTR Information; + union { + NTSTATUS Status; + PVOID Pointer; + }; + ULONG_PTR Information; } IO_STATUS_BLOCK, *PIO_STATUS_BLOCK; diff --git a/ctypes_generation/extended_interfaces/IStream.py b/ctypes_generation/extended_interfaces/IStream.py new file mode 100644 index 00000000..f01918c2 --- /dev/null +++ b/ctypes_generation/extended_interfaces/IStream.py @@ -0,0 +1,23 @@ +OLD_IStream = IStream +class IStream(OLD_IStream): + + def read(self, size): + buffer = (CHAR * size)() + size_read = ULONG() + self.Read(buffer, size, size_read) + return buffer[:size_read.value] + + + def write(self, data): + assert isinstance(data, bytes), "IStream.write() only accept bytes but {0} was passed".format(type(data)) + written = ULONG() + self.Write(data, len(data), written) + return written.value + + def seek(self, position, origin=STREAM_SEEK_SET): + newpos = ULARGE_INTEGER() + self.Seek(position, origin, newpos) + return newpos.value + + + diff --git a/ctypes_generation/extended_structs/_GUID.py b/ctypes_generation/extended_structs/_GUID.py index b299d582..52c64a04 100644 --- a/ctypes_generation/extended_structs/_GUID.py +++ b/ctypes_generation/extended_structs/_GUID.py @@ -22,7 +22,7 @@ def __repr__(self): self.name = None if self.name is None: return ''.format(self.strid.upper()) - return ''.format(self.strid.upper(), self.name) + return ''.format(self.strid.upper(), self.name) __sprint__ = __repr__ diff --git a/ctypes_generation/extended_structs/tagDUALSTRINGARRAY.py b/ctypes_generation/extended_structs/tagDUALSTRINGARRAY.py new file mode 100644 index 00000000..6da60e9e --- /dev/null +++ b/ctypes_generation/extended_structs/tagDUALSTRINGARRAY.py @@ -0,0 +1,57 @@ +INITIAL_tagDUALSTRINGARRAY = tagDUALSTRINGARRAY + +class tagDUALSTRINGARRAY(INITIAL_tagDUALSTRINGARRAY): + @property + def rawbuffer(self): + array_size = self.wNumEntries + array_type = self.aStringArray._type_ + new_buffer_type = (array_type * array_size) + buffer = new_buffer_type.from_address(ctypes.addressof(self.aStringArray)) + return buffer + + + + @property + def bidings(self): + rawbuffer = self.rawbuffer + rawarray = rawbuffer[:] # Allow to find 0 in USHORT without overlap + rawbytes = bytearray(rawbuffer) # Allow to access to bytes to utf-16-le decode + results = [] + next_start = 0 + + # STRINGBINDING documentation says that it starts with a USHORT wTowerId + # But i don't see it in our response.. (local response ?) + # So ignore it for now + for i in range(100): + current_index = rawarray.index(0, next_start) + new_entry = rawbytes[next_start * 2: current_index * 2] + if not new_entry: + return results + results.append(new_entry.decode("utf-16-le")) # Does not handle full unicode I think but.. + next_start = current_index + 1 + # Should not happen + raise ValueError("Could not parse DUALSTRINGARRAY") + + @property + def security_bidings(self): + rawbuffer = self.rawbuffer + rawarray = rawbuffer[self.wSecurityOffset:] + rawbytes = bytearray(rawbuffer)[self.wSecurityOffset * 2:] + results = [] + next_start = 0 + + for i in range(100): + wAuthnSvc = rawarray[next_start] + if wAuthnSvc == 0: + return results + reserved = rawarray[next_start + 1] + current_index = rawarray.index(0, next_start + 2) + new_entry = rawbytes[(next_start + 2) * 2:current_index * 2] + results.append((wAuthnSvc, reserved, new_entry.decode("utf-16-le"))) # Does not handle full unicode I think but.. + next_start = current_index + 1 + # Should not happen + raise ValueError("Could not parse DUALSTRINGARRAY security bidings") + + + + diff --git a/ctypes_generation/extended_structs/tagMInterfacePointer.py b/ctypes_generation/extended_structs/tagMInterfacePointer.py new file mode 100644 index 00000000..b039fac4 --- /dev/null +++ b/ctypes_generation/extended_structs/tagMInterfacePointer.py @@ -0,0 +1,6 @@ +INITIAL_tagMInterfacePointer = tagMInterfacePointer + +class tagMInterfacePointer(INITIAL_tagMInterfacePointer): + @property + def objref(self): + return OBJREF.from_address(ctypes.addressof(self.abData)) \ No newline at end of file diff --git a/ctypes_generation/generate.py b/ctypes_generation/generate.py index 208d93a8..bc654d45 100644 --- a/ctypes_generation/generate.py +++ b/ctypes_generation/generate.py @@ -399,6 +399,10 @@ def generate_for_file(self, file): for value, name, descr in file.data: self.emitline(".. autodata:: {name}".format(name=name)) +EXTENDED_INTERFACE_FILE = glob.glob(pjoin(SCRIPT_DIR, "extended_interfaces", "*.py")) +EXTENDED_INTERFACE = [os.path.basename(filename)[:-len(".py")] for filename in EXTENDED_INTERFACE_FILE] + + class COMCtypesGenerator(CtypesGenerator): IGNORED_INTERFACE = set(COMParsedFile.IGNORED_INTERFACE) def __init__(self, *args, **kwargs): @@ -412,12 +416,15 @@ def __init__(self, *args, **kwargs): def parse_iid_file(self, filename): data = open(filename).read() for line in data.split("\n"): + if line.strip().startswith("//"): + continue # Commentaires du pauvre name, iid = line.split("|") self.iids_def[name] = self.parse_iid(iid), iid def generate_files(self, files): + self.generate_known_iid_list() # We generate COM interface in 2 step - # 1) The Class intself with the IDD + # 1) The Class itself with the IDD # 2) The function list after all class we generated # - This allow COM function to refer the interface in their def :) for file in files: @@ -425,19 +432,34 @@ def generate_files(self, files): for file in files: self.generate_com_interface_functions(file.data) + def generate_known_iid_list(self): + # Generate list of known IID at the start of the file + # This take quite some memory/time when starting PFW + # for interface_name, (iid_python, iid_str) in self.iids_def.items(): + # cls_format_param = {"name": interface_name, "iid_python" : iid_python, "iid_str": iid_str} + # self.emitline('IID_{name} = generate_IID({iid_python}, name="{name}", strid="{iid_str}")'.format(**cls_format_param)) + pass + def generate_com_interface_class_iid(self, cominterface): - name = cominterface.name if cominterface.iid is not None: iid_str = cominterface.iid iid_python = self.parse_iid(iid_str) else: print("Lookup of IID for <{0}>".format(cominterface.name)) iid_python, iid_str = self.iids_def[cominterface.name] - cls_format_param = {"name": name, "iid_python" : iid_python, "iid_str": iid_str} + + cls_format_param = {"name": cominterface.name, "iid_python" : iid_python, "iid_str": iid_str} self.emitline("class {name}(COMInterface):".format(**cls_format_param)) self.emitline(' IID = generate_IID({iid_python}, name="{name}", strid="{iid_str}")'.format(**cls_format_param)) + # self.emitline(' IID = IID_{name}'.format(name=cominterface.name)) # If we accept to have generate_known_iid_list() self.emitline('') + # Emit the extended interface definition if existing + if cominterface.name in EXTENDED_INTERFACE: + extended_interface_filename = from_here(os.path.join("extended_interfaces", "{0}.py".format(cominterface.name))) + print("Including extended COM Interface definition for <{0}>".format(cominterface.name)) + with open(extended_interface_filename) as f: + self.emitline(f.read()) def generate_com_interface_functions(self, cominterface): name = cominterface.name diff --git a/docs/source/interfaces_generated.rst b/docs/source/interfaces_generated.rst index c1e4e533..561b2b8e 100644 --- a/docs/source/interfaces_generated.rst +++ b/docs/source/interfaces_generated.rst @@ -2,6 +2,24 @@ Interfaces ---------- +.. class:: IActivationStageInfo + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: SetStageAndIndex + .. method:: GetStage + .. method:: GetIndex + + +.. class:: ICallFactory + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: CreateCall + + .. class:: ICallFrame .. method:: QueryInterface @@ -57,6 +75,42 @@ Interfaces .. method:: GetRegisteredSink +.. class:: IClassFactory + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: CreateInstance + .. method:: LockServer + + +.. class:: IClientSecurity + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: QueryBlanket + .. method:: SetBlanket + .. method:: CopyProxy + + +.. class:: IComCatalog + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: GetClassInfo + .. method:: GetApplicationInfo + .. method:: GetProcessInfo + .. method:: GetServerGroupInfo + .. method:: GetRetQueueInfo + .. method:: GetApplicationInfoForExe + .. method:: GetTypeLibrary + .. method:: GetInterfaceInfo + .. method:: FlushCache + .. method:: GetClassInfoFromProgId + + .. class:: IDispatch .. method:: QueryInterface @@ -79,6 +133,54 @@ Interfaces .. method:: Clone +.. class:: IInternalUnknown + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: QueryInternalInterface + + +.. class:: IMarshal + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: GetUnmarshalClass + .. method:: GetMarshalSizeMax + .. method:: MarshalInterface + .. method:: UnmarshalInterface + .. method:: ReleaseMarshalData + .. method:: DisconnectObject + + +.. class:: IMoniker + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: GetClassID + .. method:: IsDirty + .. method:: Load + .. method:: Save + .. method:: GetSizeMax + .. method:: BindToObject + .. method:: BindToStorage + .. method:: Reduce + .. method:: ComposeWith + .. method:: Enum + .. method:: IsEqual + .. method:: Hash + .. method:: IsRunning + .. method:: GetTimeOfLastChange + .. method:: Inverse + .. method:: CommonPrefixWith + .. method:: RelativePathTo + .. method:: GetDisplayName + .. method:: ParseDisplayName + .. method:: IsSystemMoniker + + .. class:: INetFwPolicy2 .. method:: QueryInterface @@ -112,22 +214,6 @@ Interfaces .. method:: get_LocalPolicyModifyState -.. class:: INetFwRules - - .. method:: QueryInterface - .. method:: AddRef - .. method:: Release - .. method:: GetTypeInfoCount - .. method:: GetTypeInfo - .. method:: GetIDsOfNames - .. method:: Invoke - .. method:: get_Count - .. method:: Add - .. method:: Remove - .. method:: Item - .. method:: get__NewEnum - - .. class:: INetFwRule .. method:: QueryInterface @@ -175,6 +261,22 @@ Interfaces .. method:: put_Action +.. class:: INetFwRules + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: GetTypeInfoCount + .. method:: GetTypeInfo + .. method:: GetIDsOfNames + .. method:: Invoke + .. method:: get_Count + .. method:: Add + .. method:: Remove + .. method:: Item + .. method:: get__NewEnum + + .. class:: INetFwServiceRestriction .. method:: QueryInterface @@ -189,6 +291,24 @@ Interfaces .. method:: get_Rules +.. class:: IObjContext + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: SetProperty + .. method:: RemoveProperty + .. method:: GetProperty + .. method:: EnumContextProps + .. method:: Reserved1 + .. method:: Reserved2 + .. method:: Reserved3 + .. method:: Reserved4 + .. method:: Reserved5 + .. method:: Reserved6 + .. method:: Reserved7 + + .. class:: IPersist .. method:: QueryInterface @@ -210,6 +330,16 @@ Interfaces .. method:: GetCurFile +.. class:: IRemUnknown + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: RemQueryInterface + .. method:: RemAddRef + .. method:: RemRelease + + .. class:: IShellLinkA .. method:: QueryInterface @@ -260,6 +390,53 @@ Interfaces .. method:: SetPath +.. class:: IStdIdentity + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + + +.. class:: IStorage + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: CreateStream + .. method:: OpenStream + .. method:: CreateStorage + .. method:: OpenStorage + .. method:: CopyTo + .. method:: MoveElementTo + .. method:: Commit + .. method:: Revert + .. method:: EnumElements + .. method:: DestroyElement + .. method:: RenameElement + .. method:: SetElementTimes + .. method:: SetClass + .. method:: SetStateBits + .. method:: Stat + + +.. class:: IStream + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: Read + .. method:: Write + .. method:: Seek + .. method:: SetSize + .. method:: CopyTo + .. method:: Commit + .. method:: Revert + .. method:: LockRegion + .. method:: UnlockRegion + .. method:: Stat + .. method:: Clone + + .. class:: ITypeComp .. method:: QueryInterface @@ -500,6 +677,224 @@ Interfaces .. method:: GetCount +.. class:: IActivationProperties + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: GetUnmarshalClass + .. method:: GetMarshalSizeMax + .. method:: MarshalInterface + .. method:: UnmarshalInterface + .. method:: ReleaseMarshalData + .. method:: DisconnectObject + .. method:: SetDestCtx + .. method:: SetMarshalFlags + .. method:: SetLocalBlob + .. method:: GetLocalBlob + + +.. class:: IActivationPropertiesOut + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: GetActivationID + .. method:: GetObjectInterface + .. method:: GetObjectInterfaces + .. method:: RemoveRequestedIIDs + + +.. class:: IActivationPropertiesIn + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: GetActivationID + .. method:: GetClassInfo + .. method:: GetClsctx + .. method:: GetActivationFlags + .. method:: AddRequestedIIDs + .. method:: GetRequestedIIDs + .. method:: DelegateGetClassObject + .. method:: DelegateCreateInstance + .. method:: DelegateCIAndGetCF + .. method:: GetReturnActivationProperties + + +.. class:: IClassClassicInfo + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: GetThreadingModel + .. method:: GetModulePath + .. method:: GetImplementedClsid + .. method:: GetProcess + .. method:: GetRemoteServerName + .. method:: GetLocalServerType + .. method:: GetSurrogateCommandLine + + +.. class:: IComClassInfo + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: GetConfiguredClsid + .. method:: GetProgId + .. method:: GetClassName + .. method:: GetApplication + .. method:: GetClassContext + .. method:: GetCustomActivatorCount + .. method:: GetCustomActivatorClsids + .. method:: GetCustomActivators + .. method:: GetTypeInfo + .. method:: IsComPlusConfiguredClass + .. method:: MustRunInClientContext + .. method:: GetVersionNumber + .. method:: Lock + .. method:: Unlock + + +.. class:: IContext + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: SetProperty + .. method:: RemoveProperty + .. method:: GetProperty + .. method:: EnumContextProps + + +.. class:: IEnumContextProps + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: Next + .. method:: Skip + .. method:: Reset + .. method:: Clone + .. method:: Count + + +.. class:: IEnumSTATSTG + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: Next + .. method:: Skip + .. method:: Reset + .. method:: Clone + + +.. class:: IInitActivationPropertiesIn + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: SetClsctx + .. method:: SetActivationFlags + .. method:: SetClassInfo + .. method:: SetContextInfo + .. method:: SetConstructFromStorage + .. method:: SetConstructFromFile + + +.. class:: IOpaqueDataInfo + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: AddOpaqueData + .. method:: GetOpaqueData + .. method:: DeleteOpaqueData + .. method:: GetOpaqueDataCount + .. method:: GetAllOpaqueData + + +.. class:: IPrivActivationPropertiesIn + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: GetActivationID + .. method:: GetClassInfo + .. method:: GetClsctx + .. method:: GetActivationFlags + .. method:: AddRequestedIIDs + .. method:: GetRequestedIIDs + .. method:: DelegateGetClassObject + .. method:: DelegateCreateInstance + .. method:: DelegateCIAndGetCF + .. method:: GetReturnActivationProperties + .. method:: PrivGetReturnActivationProperties + .. method:: GetCOMVersion + .. method:: GetClsid + .. method:: GetClientToken + .. method:: GetDestCtx + + +.. class:: IPrivActivationPropertiesOut + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: GetActivationID + .. method:: GetObjectInterface + .. method:: GetObjectInterfaces + .. method:: RemoveRequestedIIDs + .. method:: SetObjectInterfaces + .. method:: SetMarshalledResults + .. method:: GetMarshalledResults + + +.. class:: IScmReplyInfo + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: SetResolverInfo + .. method:: GetResolverInfo + .. method:: SetRemoteReplyInfo + .. method:: GetRemoteReplyInfo + + +.. class:: IScmRequestInfo + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: SetScmInfo + .. method:: GetScmInfo + .. method:: SetRemoteRequestInfo + .. method:: GetRemoteRequestInfo + + +.. class:: IStandardActivator + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: StandardGetClassObject + .. method:: StandardCreateInstance + .. method:: StandardGetInstanceFromFile + .. method:: StandardGetInstanceFromIStorage + .. method:: Reset + + +.. class:: ISystemActivator + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: GetClassObject + .. method:: CreateInstance + + .. class:: IBindCtx .. method:: QueryInterface @@ -576,33 +971,6 @@ Interfaces .. method:: EnumSubCommands -.. class:: IMoniker - - .. method:: QueryInterface - .. method:: AddRef - .. method:: Release - .. method:: GetClassID - .. method:: IsDirty - .. method:: Load - .. method:: Save - .. method:: GetSizeMax - .. method:: BindToObject - .. method:: BindToStorage - .. method:: Reduce - .. method:: ComposeWith - .. method:: Enum - .. method:: IsEqual - .. method:: Hash - .. method:: IsRunning - .. method:: GetTimeOfLastChange - .. method:: Inverse - .. method:: CommonPrefixWith - .. method:: RelativePathTo - .. method:: GetDisplayName - .. method:: ParseDisplayName - .. method:: IsSystemMoniker - - .. class:: IRunningObjectTable .. method:: QueryInterface @@ -643,22 +1011,30 @@ Interfaces .. method:: EnumItems -.. class:: IStream +.. class:: IProxyManager .. method:: QueryInterface .. method:: AddRef .. method:: Release - .. method:: Read - .. method:: Write - .. method:: Seek - .. method:: SetSize - .. method:: CopyTo - .. method:: Commit - .. method:: Revert - .. method:: LockRegion - .. method:: UnlockRegion - .. method:: Stat - .. method:: Clone + .. method:: CreateServer + .. method:: IsConnected + .. method:: LockConnection + .. method:: Disconnect + .. method:: GetConnectionStatus + .. method:: ScalarDeletingDestructor + .. method:: SetMapping + .. method:: GetMapping + .. method:: GetServerObjectContext + .. method:: GetWrapperForContex + + +.. class:: IProxyServerIdentity + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: GetServerProcessId + .. method:: GetServerProcessHandle .. class:: IApplicationActivationManager @@ -701,6 +1077,63 @@ Interfaces .. method:: OnStateChanged +.. class:: IChannelHook + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: ClientGetSize + .. method:: ClientFillBuffer + .. method:: ClientNotify + .. method:: ServerNotify + .. method:: ServerGetSize + .. method:: ServerFillBuffer + + +.. class:: IRpcChannelBuffer + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: GetBuffer + .. method:: SendReceive + .. method:: FreeBuffer + .. method:: GetDestCtx + .. method:: IsConnected + + +.. class:: IRpcHelper + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: GetDCOMProtocolVersion + .. method:: GetIIDFromOBJREF + + +.. class:: IRpcOptions + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: Set + .. method:: Query + + +.. class:: IRpcStubBuffer + + .. method:: QueryInterface + .. method:: AddRef + .. method:: Release + .. method:: Connect + .. method:: Disconnect + .. method:: Invoke + .. method:: IsIIDSupported + .. method:: CountRefs + .. method:: DebugServerQueryInterface + .. method:: DebugServerRelease + + .. class:: IAction .. method:: QueryInterface diff --git a/docs/source/windef_generated.rst b/docs/source/windef_generated.rst index 834a0c3f..01097f63 100644 --- a/docs/source/windef_generated.rst +++ b/docs/source/windef_generated.rst @@ -126,6 +126,32 @@ WinDef .. autodata:: NUM_CR_RESULTS .. autodata:: PCD_MAX_MEMORY .. autodata:: PCD_MAX_IO +.. autodata:: ORPCF_NULL +.. autodata:: ORPCF_LOCAL +.. autodata:: ORPCF_RESERVED1 +.. autodata:: ORPCF_RESERVED2 +.. autodata:: ORPCF_RESERVED3 +.. autodata:: ORPCF_RESERVED4 +.. autodata:: ORPCF_INPUT_SYNC +.. autodata:: ORPCF_ASYNC +.. autodata:: ORPCF_DYNAMIC_CLOAKING +.. autodata:: ORPCF_REJECTED +.. autodata:: ORPCF_RETRY_LATER +.. autodata:: OBJREF_SIGNATURE +.. autodata:: OBJREF_STANDARD +.. autodata:: OBJREF_HANDLER +.. autodata:: OBJREF_CUSTOM +.. autodata:: OBJREF_EXTENDED +.. autodata:: SORF_OXRES1 +.. autodata:: SORF_OXRES2 +.. autodata:: SORF_OXRES3 +.. autodata:: SORF_OXRES4 +.. autodata:: SORF_OXRES5 +.. autodata:: SORF_OXRES6 +.. autodata:: SORF_OXRES7 +.. autodata:: SORF_OXRES8 +.. autodata:: SORF_NULL +.. autodata:: SORF_NOPING .. autodata:: CWCSTORAGENAME .. autodata:: STGM_DIRECT .. autodata:: STGM_TRANSACTED @@ -2393,11 +2419,11 @@ WinDef .. autodata:: FAX_PORT_QUERY .. autodata:: FAX_PORT_SET .. autodata:: FAX_JOB_MANAGE -.. autodata:: COM_EXECUTE -.. autodata:: COM_EXECUTE_LOCAL -.. autodata:: COM_EXECUTE_REMOTE -.. autodata:: COM_ACTIVATE_LOCAL -.. autodata:: COM_ACTIVATE_REMOTE +.. autodata:: COM_RIGHTS_EXECUTE +.. autodata:: COM_RIGHTS_EXECUTE_LOCAL +.. autodata:: COM_RIGHTS_EXECUTE_REMOTE +.. autodata:: COM_RIGHTS_ACTIVATE_LOCAL +.. autodata:: COM_RIGHTS_ACTIVATE_REMOTE .. autodata:: SECTION_QUERY .. autodata:: SECTION_MAP_WRITE .. autodata:: SECTION_MAP_READ diff --git a/docs/source/winfuncs_generated.rst b/docs/source/winfuncs_generated.rst index f0402197..b28c738f 100644 --- a/docs/source/winfuncs_generated.rst +++ b/docs/source/winfuncs_generated.rst @@ -164,6 +164,14 @@ Functions .. function:: SysFreeString(bstrString) +.. function:: CreateStreamOnHGlobal(hGlobal, fDeleteOnRelease, ppstm) + +.. function:: GetHGlobalFromStream(pstm, phglobal) + +.. function:: CoMarshalInterface(pStm, riid, pUnk, dwDestContext, pvDestContext, mshlflags) + +.. function:: CoUnmarshalInterface(pStm, riid, ppv) + .. function:: CryptCATAdminCalcHashFromFileHandle(hFile, pcbHash, pbHash, dwFlags) .. function:: CryptCATAdminCalcHashFromFileHandle2(hCatAdmin, hFile, pcbHash, pbHash, dwFlags) @@ -978,12 +986,6 @@ Functions .. function:: SymEnumSymbolsEx(hProcess, BaseOfDll, Mask, EnumSymbolsCallback, UserContext, Options) -.. function:: SymEnumTypes(hProcess, BaseOfDll, EnumSymbolsCallback, UserContext) - -.. function:: SymEnumTypesByName(hProcess, BaseOfDll, mask, EnumSymbolsCallback, UserContext) - -.. function:: SymEnumTypesByNameW(hProcess, BaseOfDll, mask, EnumSymbolsCallback, UserContext) - .. function:: SymEnumerateModules64(hProcess, EnumModulesCallback, UserContext) .. function:: SymEnumerateModulesW64(hProcess, EnumModulesCallback, UserContext) @@ -1072,6 +1074,14 @@ Functions .. function:: SymSetSearchPathW(hProcess, SearchPath) +.. function:: SymEnumTypes(hProcess, BaseOfDll, EnumSymbolsCallback, UserContext) + +.. function:: SymEnumTypesW(hProcess, BaseOfDll, EnumSymbolsCallback, UserContext) + +.. function:: SymEnumTypesByName(hProcess, BaseOfDll, mask, EnumSymbolsCallback, UserContext) + +.. function:: SymEnumTypesByNameW(hProcess, BaseOfDll, mask, EnumSymbolsCallback, UserContext) + .. function:: CreateEventA(lpEventAttributes, bManualReset, bInitialState, lpName) .. function:: CreateEventW(lpEventAttributes, bManualReset, bInitialState, lpName) diff --git a/docs/source/winstructs_generated.rst b/docs/source/winstructs_generated.rst index 14a33fc5..3878cb33 100644 --- a/docs/source/winstructs_generated.rst +++ b/docs/source/winstructs_generated.rst @@ -131,6 +131,10 @@ Simple types .. autoclass:: OLECHAR +.. class:: SNB + + Pointer to :class:`POINTER(OLECHAR)` + .. autoclass:: POLECHAR .. autoclass:: PZZWSTR @@ -221,9 +225,7 @@ Simple types .. autoclass:: LRESULT -.. class:: LPUNKNOWN - - Pointer to :class:`PVOID` +.. autoclass:: LPUNKNOWN .. class:: LPPOINT @@ -245,6 +247,10 @@ Simple types .. autoclass:: NET_API_STATUS +.. autoclass:: PVOID32 + +.. autoclass:: PVOID64 + .. autoclass:: NCRYPT_HANDLE .. autoclass:: NCRYPT_PROV_HANDLE @@ -415,6 +421,18 @@ Simple types .. autoclass:: SFGAOF +.. autoclass:: ID + +.. autoclass:: MID + +.. autoclass:: OXID + +.. autoclass:: OID + +.. autoclass:: SETID + +.. autoclass:: LPSTREAM + .. autoclass:: GROUP .. autoclass:: SOCKET @@ -588,6 +606,10 @@ _BG_FILE_RANGE _GUID ''''' +.. class:: CID + + Alias for :class:`_GUID` + .. class:: CLSID Alias for :class:`_GUID` @@ -600,6 +622,10 @@ _GUID Alias for :class:`_GUID` +.. class:: IPID + + Alias for :class:`_GUID` + .. class:: LPCGUID Pointer to :class:`_GUID` @@ -624,6 +650,10 @@ _GUID Pointer to :class:`_GUID` +.. class:: REFIPID + + Pointer to :class:`_GUID` + .. class:: _GUID .. attribute:: Data1 @@ -1950,70 +1980,1260 @@ _ANON_TMP_variant_sub_union .. attribute:: pullVal - :class:`ULONGLONG` + :class:`ULONGLONG` + + + .. attribute:: pintVal + + :class:`INT` + + + .. attribute:: puintVal + + :class:`UINT` + + + .. attribute:: _VARIANT_NAME_4 + + :class:`_tagBRECORD` + +__tagVARIANT +'''''''''''' +.. class:: LPVARIANT + + Pointer to :class:`__tagVARIANT` + +.. class:: LPVARIANTARG + + Pointer to :class:`__tagVARIANT` + +.. class:: VARIANT + + Alias for :class:`__tagVARIANT` + +.. class:: VARIANTARG + + Alias for :class:`__tagVARIANT` + +.. class:: _tagVARIANT + + Alias for :class:`__tagVARIANT` + +.. class:: __tagVARIANT + + .. attribute:: vt + + :class:`VARTYPE` + + + .. attribute:: wReserved1 + + :class:`WORD` + + + .. attribute:: wReserved2 + + :class:`WORD` + + + .. attribute:: wReserved3 + + :class:`WORD` + + + .. attribute:: _VARIANT_NAME_3 + + :class:`_ANON_TMP_variant_sub_union` + +tagOpaqueData +''''''''''''' +.. class:: OpaqueData + + Alias for :class:`tagOpaqueData` + +.. class:: tagOpaqueData + + .. attribute:: guid + + :class:`GUID` + + + .. attribute:: dataLength + + :class:`ULONG` + + + .. attribute:: reserved1 + + :class:`ULONG` + + + .. attribute:: reserved2 + + :class:`ULONG` + + + .. attribute:: data + + :class:`BYTE` + +tagSTDOBJREF +'''''''''''' +.. class:: STDOBJREF + + Alias for :class:`tagSTDOBJREF` + +.. class:: tagSTDOBJREF + + .. attribute:: flags + + :class:`ULONG` + + + .. attribute:: cPublicRefs + + :class:`ULONG` + + + .. attribute:: oxid + + :class:`OXID` + + + .. attribute:: oid + + :class:`OID` + + + .. attribute:: ipid + + :class:`IPID` + +tagDATAELEMENT +'''''''''''''' +.. class:: DATAELEMENT + + Alias for :class:`tagDATAELEMENT` + +.. class:: PDATAELEMENT + + Pointer to :class:`tagDATAELEMENT` + +.. class:: tagDATAELEMENT + + .. attribute:: dataID + + :class:`GUID` + + + .. attribute:: cbSize + + :class:`ULONG` + + + .. attribute:: cbRounded + + :class:`ULONG` + + + .. attribute:: Data + + :class:`BYTE` + +tagOBJREFDATA +''''''''''''' +.. class:: OBJREFDATA + + Alias for :class:`tagOBJREFDATA` + +.. class:: tagOBJREFDATA + + .. attribute:: nElms + + :class:`ULONG` + + + .. attribute:: ppElmArray + + :class:`PDATAELEMENT` + +tagDUALSTRINGARRAY +'''''''''''''''''' +.. class:: DUALSTRINGARRAY + + Alias for :class:`tagDUALSTRINGARRAY` + +.. class:: tagDUALSTRINGARRAY + + .. attribute:: wNumEntries + + :class:`USHORT` + + + .. attribute:: wSecurityOffset + + :class:`USHORT` + + + .. attribute:: aStringArray + + :class:`USHORT` + +tagOBJREF +''''''''' +.. class:: OBJREF + + Alias for :class:`tagOBJREF` + +.. class:: tagOBJREF + + .. attribute:: signature + + :class:`ULONG` + + + .. attribute:: flags + + :class:`ULONG` + + + .. attribute:: iid + + :class:`GUID` + + + .. attribute:: u_objref + + :class:`_ANON_TAGOBJREF_SUB_UNION_1` + +tagCOMVERSION +''''''''''''' +.. class:: COMVERSION + + Alias for :class:`tagCOMVERSION` + +.. class:: tagCOMVERSION + + .. attribute:: MajorVersion + + :class:`USHORT` + + + .. attribute:: MinorVersion + + :class:`USHORT` + +tagORPC_EXTENT +'''''''''''''' +.. class:: ORPC_EXTENT + + Alias for :class:`tagORPC_EXTENT` + +.. class:: PORPC_EXTENT + + Alias for :class:`tagORPC_EXTENT` + +.. class:: tagORPC_EXTENT + + .. attribute:: id + + :class:`_GUID` + + + .. attribute:: size + + :class:`ULONG` + + + .. attribute:: data + + :class:`BYTE` + +tagORPC_EXTENT_ARRAY +'''''''''''''''''''' +.. class:: ORPC_EXTENT_ARRAY + + Alias for :class:`tagORPC_EXTENT_ARRAY` + +.. class:: tagORPC_EXTENT_ARRAY + + .. attribute:: size + + :class:`ULONG` + + + .. attribute:: reserved + + :class:`ULONG` + + + .. attribute:: extent + + :class:`PORPC_EXTENT` + +tagORPCTHIS +''''''''''' +.. class:: ORPCTHIS + + Alias for :class:`tagORPCTHIS` + +.. class:: tagORPCTHIS + + .. attribute:: version + + :class:`COMVERSION` + + + .. attribute:: flags + + :class:`ULONG` + + + .. attribute:: reserved1 + + :class:`ULONG` + + + .. attribute:: cid + + :class:`GUID` + + + .. attribute:: extensions + + :class:`PVOID` + +tagORPCTHIS32 +''''''''''''' +.. class:: ORPCTHIS32 + + Alias for :class:`tagORPCTHIS32` + +.. class:: tagORPCTHIS32 + + .. attribute:: version + + :class:`COMVERSION` + + + .. attribute:: flags + + :class:`ULONG` + + + .. attribute:: reserved1 + + :class:`ULONG` + + + .. attribute:: cid + + :class:`GUID` + + + .. attribute:: extensions + + :class:`PVOID32` + +tagOXID_INFO +'''''''''''' +.. class:: OXID_INFO + + Alias for :class:`tagOXID_INFO` + +.. class:: tagOXID_INFO + + .. attribute:: dwTid + + :class:`DWORD` + + + .. attribute:: dwPid + + :class:`DWORD` + + + .. attribute:: dwAuthnHint + + :class:`DWORD` + + + .. attribute:: version + + :class:`COMVERSION` + + + .. attribute:: ipidRemUnknown + + :class:`IPID` + + + .. attribute:: dwFlags + + :class:`DWORD` + + + .. attribute:: psa + + :class:`DUALSTRINGARRAY` + +tagContextProperty +'''''''''''''''''' +.. class:: ContextProperty + + Alias for :class:`tagContextProperty` + +.. class:: tagContextProperty + + .. attribute:: policyId + + :class:`GUID` + + + .. attribute:: flags + + :class:`CPFLAGS` + + + .. attribute:: pUnk + + :class:`PVOID` + +_PRIV_SCM_INFO +'''''''''''''' +.. class:: PRIV_SCM_INFO + + Alias for :class:`_PRIV_SCM_INFO` + +.. class:: _PRIV_SCM_INFO + + .. attribute:: Apartment + + :class:`LONG` + + + .. attribute:: pwszWinstaDesktop + + :class:`WCHAR` + + + .. attribute:: ProcessSignature + + :class:`ULONG64` + + + .. attribute:: pEnvBlock + + :class:`WCHAR` + + + .. attribute:: EnvBlockLength + + :class:`DWORD` + +_REMOTE_REQUEST_SCM_INFO +'''''''''''''''''''''''' +.. class:: REMOTE_REQUEST_SCM_INFO + + Alias for :class:`_REMOTE_REQUEST_SCM_INFO` + +.. class:: _REMOTE_REQUEST_SCM_INFO + + .. attribute:: ClientImpLevel + + :class:`DWORD` + + + .. attribute:: cRequestedProtseqs + + :class:`USHORT` + + + .. attribute:: pRequestedProtseqs + + :class:`USHORT` + +tagMInterfacePointer +'''''''''''''''''''' +.. class:: MInterfacePointer + + Alias for :class:`tagMInterfacePointer` + +.. class:: PMInterfacePointer + + Pointer to :class:`tagMInterfacePointer` + +.. class:: tagMInterfacePointer + + .. attribute:: ulCntData + + :class:`ULONG` + + + .. attribute:: abData + + :class:`BYTE` + +tagRPCOLEMESSAGE +'''''''''''''''' +.. class:: PRPCOLEMESSAGE + + Pointer to :class:`tagRPCOLEMESSAGE` + +.. class:: RPCOLEMESSAGE + + Alias for :class:`tagRPCOLEMESSAGE` + +.. class:: tagRPCOLEMESSAGE + + .. attribute:: reserved1 + + :class:`PVOID` + + + .. attribute:: dataRepresentation + + :class:`RPCOLEDATAREP` + + + .. attribute:: Buffer + + :class:`PVOID` + + + .. attribute:: cbBuffer + + :class:`ULONG` + + + .. attribute:: iMethod + + :class:`ULONG` + + + .. attribute:: reserved2 + + :class:`PVOID` ``[5]`` + + + .. attribute:: rpcFlags + + :class:`ULONG` + +tagREMQIRESULT +'''''''''''''' +.. class:: PREMQIRESULT + + Pointer to :class:`tagREMQIRESULT` + +.. class:: REMQIRESULT + + Alias for :class:`tagREMQIRESULT` + +.. class:: tagREMQIRESULT + + .. attribute:: hResult + + :class:`HRESULT` + + + .. attribute:: std + + :class:`STDOBJREF` + +tagREMINTERFACEREF +'''''''''''''''''' +.. class:: REMINTERFACEREF + + Alias for :class:`tagREMINTERFACEREF` + +.. class:: tagREMINTERFACEREF + + .. attribute:: ipid + + :class:`IPID` + + + .. attribute:: cPublicRefs + + :class:`ULONG` + + + .. attribute:: cPrivateRefs + + :class:`ULONG` + +_PRIV_RESOLVER_INFO_LEGACY +'''''''''''''''''''''''''' +.. class:: PPRIV_RESOLVER_INFO_LEGACY + + Pointer to :class:`_PRIV_RESOLVER_INFO_LEGACY` + +.. class:: PRIV_RESOLVER_INFO_LEGACY + + Alias for :class:`_PRIV_RESOLVER_INFO_LEGACY` + +.. class:: _PRIV_RESOLVER_INFO_LEGACY + + .. attribute:: OxidServer + + :class:`OXID` + + + .. attribute:: pServerORBindings + + :class:`DUALSTRINGARRAY` + + + .. attribute:: OxidInfo + + :class:`OXID_INFO` + + + .. attribute:: LocalMidOfRemote + + :class:`MID` + + + .. attribute:: DllServerModel + + :class:`DWORD` + + + .. attribute:: pwszDllServer + + :class:`WCHAR` + + + .. attribute:: FoundInROT + + :class:`BOOL` + +_REMOTE_REPLY_SCM_INFO +'''''''''''''''''''''' +.. class:: PREMOTE_REPLY_SCM_INFO + + Pointer to :class:`_REMOTE_REPLY_SCM_INFO` + +.. class:: REMOTE_REPLY_SCM_INFO + + Alias for :class:`_REMOTE_REPLY_SCM_INFO` + +.. class:: _REMOTE_REPLY_SCM_INFO + + .. attribute:: Oxid + + :class:`OXID` + + + .. attribute:: pdsaOxidBindings + + :class:`DUALSTRINGARRAY` + + + .. attribute:: ipidRemUnknown + + :class:`IPID` + + + .. attribute:: authnHint + + :class:`DWORD` + + + .. attribute:: serverVersion + + :class:`COMVERSION` + +CONTAINER_EXTENT +'''''''''''''''' +.. class:: CONTAINER_EXTENT + + .. attribute:: id + + :class:`UINT` + + + .. attribute:: version + + :class:`UINT` + + + .. attribute:: size + + :class:`UINT` + + + .. attribute:: data + + :class:`BYTE` + +CONTAINER_EXTENT_ARRAY +'''''''''''''''''''''' +.. class:: CONTAINER_EXTENT_ARRAY + + .. attribute:: size + + :class:`UINT` + + + .. attribute:: reserved + + :class:`UINT` + + + .. attribute:: extent + + :class:`CONTAINER_EXTENT` + +HSTRING__ +''''''''' +.. class:: HSTRING__ + + .. attribute:: unused + + :class:`INT` + +CONTAINERVERSION +'''''''''''''''' +.. class:: CONTAINERVERSION + + .. attribute:: version + + :class:`UINT` + + + .. attribute:: capabilityFlags + + :class:`UINT64` + + + .. attribute:: extensions + + :class:`CONTAINER_EXTENT_ARRAY` + +_MIDL_ILocalObjectExporter_0007 +''''''''''''''''''''''''''''''' +.. class:: MIDL_ILocalObjectExporter_0007 + + Alias for :class:`_MIDL_ILocalObjectExporter_0007` + +.. class:: _MIDL_ILocalObjectExporter_0007 + + .. attribute:: dwTid + + :class:`ULONG` + + + .. attribute:: dwPid + + :class:`ULONG` + + + .. attribute:: dwAuthnHint + + :class:`ULONG` + + + .. attribute:: dcomVersion + + :class:`tagCOMVERSION` + + + .. attribute:: containerVersion + + :class:`CONTAINERVERSION` + + + .. attribute:: ipidRemUnknown + + :class:`_GUID` + + + .. attribute:: dwFlags + + :class:`ULONG` + + + .. attribute:: psa + + :class:`tagDUALSTRINGARRAY` + + + .. attribute:: guidProcessIdentifier + + :class:`_GUID` + + + .. attribute:: processHostId + + :class:`UINT64` + + + .. attribute:: clientDependencyBehavior + + :class:`INT` + + + .. attribute:: packageFullName + + :class:`HSTRING__` + + + .. attribute:: userSid + + :class:`HSTRING__` + + + .. attribute:: appcontainerSid + + :class:`HSTRING__` + + + .. attribute:: primaryOxid + + :class:`UINT64` + + + .. attribute:: primaryIpidRemUnknown + + :class:`_GUID` + +_PRIV_RESOLVER_INFO +''''''''''''''''''' +.. class:: PPRIV_RESOLVER_INFO + + Pointer to :class:`_PRIV_RESOLVER_INFO` + +.. class:: PRIV_RESOLVER_INFO + + Alias for :class:`_PRIV_RESOLVER_INFO` + +.. class:: _PRIV_RESOLVER_INFO + + .. attribute:: OxidServer + + :class:`UINT64` + + + .. attribute:: pServerORBindings + + :class:`tagDUALSTRINGARRAY` + + + .. attribute:: OxidInfo + + :class:`MIDL_ILocalObjectExporter_0007` + + + .. attribute:: LocalMidOfRemote + + :class:`UINT64` + + + .. attribute:: FoundInROT + + :class:`INT` + +_MIDL_XmitDefs_0001 +''''''''''''''''''' +.. class:: MIDL_XmitDefs_0001 + + Alias for :class:`_MIDL_XmitDefs_0001` + +.. class:: _MIDL_XmitDefs_0001 + + .. attribute:: asyncOperationId + + :class:`GUID` + + + .. attribute:: oxidClientProcessNA + + :class:`ULONG64` + + + .. attribute:: originalClientLogicalThreadId + + :class:`GUID` + + + .. attribute:: uClientCausalityTraceId + + :class:`ULONG64` + +_LOCALTHIS +'''''''''' +.. class:: LOCALTHIS + + Alias for :class:`_LOCALTHIS` + +.. class:: _LOCALTHIS + + .. attribute:: dwFlags + + :class:`DWORD` + + + .. attribute:: dwClientThread + + :class:`DWORD` + + + .. attribute:: passthroughTraceActivity + + :class:`GUID` + + + .. attribute:: callTraceActivity + + :class:`GUID` + + + .. attribute:: asyncRequestBlock + + :class:`MIDL_XmitDefs_0001` + + + .. attribute:: reserved + + :class:`DWORD` + + + .. attribute:: pTouchedAstaArray + + :class:`PVOID` + +_LOCALTHIS32 +'''''''''''' +.. class:: LOCALTHIS32 + + Alias for :class:`_LOCALTHIS32` + +.. class:: _LOCALTHIS32 + + .. attribute:: dwFlags + + :class:`DWORD` + + + .. attribute:: dwClientThread + + :class:`DWORD` + + + .. attribute:: passthroughTraceActivity + + :class:`GUID` + + + .. attribute:: callTraceActivity + + :class:`GUID` + + + .. attribute:: asyncRequestBlock + + :class:`MIDL_XmitDefs_0001` + + + .. attribute:: reserved + + :class:`DWORD` + + + .. attribute:: pTouchedAstaArray + + :class:`PVOID32` + +_MIDL_XmitDefs_0007 +''''''''''''''''''' +.. class:: _MIDL_XmitDefs_0007 + + .. attribute:: pointOfFailure + + :class:`INT` + + + .. attribute:: hrFailure + + :class:`HRESULT` + + + .. attribute:: sizeOfMarshaledErrorInfo + + :class:`ULONG` + + + .. attribute:: reserved + + :class:`ULONG` + + + .. attribute:: pMarshaledErrorInfo + + :class:`BYTE` + +_MIDL_XmitDefs_0005 +''''''''''''''''''' +.. class:: _MIDL_XmitDefs_0005 + + .. attribute:: sizeOfMarshaledResults + + :class:`ULONG` + + + .. attribute:: reserved + + :class:`ULONG` + + + .. attribute:: pMarshaledResults + + :class:`BYTE` + +_MIDL_XmitDefs_0008 +''''''''''''''''''' +.. class:: _MIDL_XmitDefs_0008 + + .. attribute:: outcome + + :class:`INT` + + + .. attribute:: successDetails + + :class:`_MIDL_XmitDefs_0005` + + + .. attribute:: failureDetails + + :class:`_MIDL_XmitDefs_0007` + +_MIDL_XmitDefs_0010 +''''''''''''''''''' +.. class:: _MIDL_XmitDefs_0010 + + .. attribute:: asyncStatus + + :class:`ULONG` + + + .. attribute:: reserved1 + + :class:`ULONG` + + + .. attribute:: uServerCausalityTraceId + + :class:`UINT64` + + + .. attribute:: completionTraceActivity + + :class:`_GUID` + + + .. attribute:: reserved2 + + :class:`ULONG` + + + .. attribute:: pOutcomeDetails + + :class:`_MIDL_XmitDefs_0008` + +CONTAINERTHAT +''''''''''''' +.. class:: CONTAINERTHAT + + .. attribute:: responseFlags + + :class:`UINT64` + + + .. attribute:: unassignedPassthroughGuid_1 + + :class:`_GUID` + + + .. attribute:: unassignedPassthroughGuid_2 + + :class:`_GUID` + + + .. attribute:: unassignedPassthroughGuid_3 + + :class:`_GUID` + + + .. attribute:: unassignedPassthroughGuid_4 + + :class:`_GUID` + + + .. attribute:: reservedGuid_1 + + :class:`_GUID` + + + .. attribute:: reservedGuid_2 + + :class:`_GUID` + + + .. attribute:: reservedGuid_3 + + :class:`_GUID` + + + .. attribute:: reservedGuid_4 + + :class:`_GUID` + + + .. attribute:: unassignedPassthroughUint64_1 + + :class:`UINT64` + + + .. attribute:: unassignedPassthroughUint64_2 + + :class:`UINT64` + + + .. attribute:: unassignedPassthroughUint64_3 + + :class:`UINT64` + + + .. attribute:: unassignedPassthroughUint64_4 + + :class:`UINT64` + + + .. attribute:: marshalingSetId + + :class:`UINT64` + + + .. attribute:: reservedUint64_2 + + :class:`UINT64` + + + .. attribute:: reservedUint64_3 + + :class:`UINT64` + + + .. attribute:: reservedUint64_4 + + :class:`UINT64` + + + .. attribute:: reservedUint32 + + :class:`UINT` + + + .. attribute:: extensions + + :class:`CONTAINER_EXTENT_ARRAY` + +_LOCALTHAT +'''''''''' +.. class:: LOCALTHAT + + Alias for :class:`_LOCALTHAT` + +.. class:: _LOCALTHAT + + .. attribute:: marshalingSetId + + :class:`UINT64` + + + .. attribute:: reserved + + :class:`ULONG` + + + .. attribute:: pAsyncResponseBlock + + :class:`_MIDL_XmitDefs_0010` + + + .. attribute:: containerErrorInformation + + :class:`CONTAINER_EXTENT` - .. attribute:: pintVal + .. attribute:: containerPassthroughData - :class:`INT` + :class:`CONTAINERTHAT` +_LOCALTHAT32 +'''''''''''' +.. class:: LOCALTHAT32 - .. attribute:: puintVal + Alias for :class:`_LOCALTHAT32` - :class:`UINT` +.. class:: _LOCALTHAT32 + .. attribute:: marshalingSetId - .. attribute:: _VARIANT_NAME_4 + :class:`UINT64` - :class:`_tagBRECORD` -__tagVARIANT -'''''''''''' -.. class:: LPVARIANT + .. attribute:: reserved - Pointer to :class:`__tagVARIANT` + :class:`ULONG` -.. class:: LPVARIANTARG - Pointer to :class:`__tagVARIANT` + .. attribute:: pAsyncResponseBlock -.. class:: VARIANT + :class:`PVOID32` - Alias for :class:`__tagVARIANT` -.. class:: VARIANTARG + .. attribute:: containerErrorInformation - Alias for :class:`__tagVARIANT` + :class:`PVOID32` -.. class:: _tagVARIANT - Alias for :class:`__tagVARIANT` + .. attribute:: containerPassthroughData -.. class:: __tagVARIANT + :class:`PVOID32` - .. attribute:: vt +tagORPCTHAT +''''''''''' +.. class:: ORPCTHAT - :class:`VARTYPE` + Alias for :class:`tagORPCTHAT` +.. class:: tagORPCTHAT - .. attribute:: wReserved1 + .. attribute:: flags - :class:`WORD` + :class:`ULONG` - .. attribute:: wReserved2 + .. attribute:: extensions - :class:`WORD` + :class:`tagORPC_EXTENT_ARRAY` +ORPCTHAT32 +'''''''''' +.. class:: ORPCTHAT32 - .. attribute:: wReserved3 + .. attribute:: flags - :class:`WORD` + :class:`ULONG` - .. attribute:: _VARIANT_NAME_3 + .. attribute:: extensions - :class:`_ANON_TMP_variant_sub_union` + :class:`PVOID32` _VIRTUAL_STORAGE_TYPE ''''''''''''''''''''' @@ -13144,23 +14364,6 @@ _OBJECT_ATTRIBUTES :class:`PVOID` -_TMP_UNION_IO_STATUS_BLOCK -'''''''''''''''''''''''''' -.. class:: TMP_UNION_IO_STATUS_BLOCK - - Alias for :class:`_TMP_UNION_IO_STATUS_BLOCK` - -.. class:: _TMP_UNION_IO_STATUS_BLOCK - - .. attribute:: Status - - :class:`NTSTATUS` - - - .. attribute:: Pointer - - :class:`PVOID` - _IO_STATUS_BLOCK '''''''''''''''' .. class:: IO_STATUS_BLOCK @@ -13173,9 +14376,9 @@ _IO_STATUS_BLOCK .. class:: _IO_STATUS_BLOCK - .. attribute:: DUMMYUNIONNAME + .. attribute:: anon_01 - :class:`TMP_UNION_IO_STATUS_BLOCK` + :class:`_ANON__IO_STATUS_BLOCK_SUB_UNION_1` .. attribute:: Information @@ -15504,124 +16707,6 @@ _REMOTE_PORT_VIEW :class:`PVOID` -tagCOMVERSION -''''''''''''' -.. class:: COMVERSION - - Alias for :class:`tagCOMVERSION` - -.. class:: tagCOMVERSION - - .. attribute:: MajorVersion - - :class:`USHORT` - - - .. attribute:: MinorVersion - - :class:`USHORT` - -tagORPCTHIS -''''''''''' -.. class:: ORPCTHIS - - Alias for :class:`tagORPCTHIS` - -.. class:: tagORPCTHIS - - .. attribute:: version - - :class:`COMVERSION` - - - .. attribute:: flags - - :class:`ULONG` - - - .. attribute:: reserved1 - - :class:`ULONG` - - - .. attribute:: cid - - :class:`GUID` - - - .. attribute:: extensions - - :class:`PVOID` - -__MIDL_XmitDefs_0001 -'''''''''''''''''''' -.. class:: MIDL_XmitDefs_0001 - - Alias for :class:`__MIDL_XmitDefs_0001` - -.. class:: __MIDL_XmitDefs_0001 - - .. attribute:: asyncOperationId - - :class:`GUID` - - - .. attribute:: oxidClientProcessNA - - :class:`ULONG64` - - - .. attribute:: originalClientLogicalThreadId - - :class:`GUID` - - - .. attribute:: uClientCausalityTraceId - - :class:`ULONG64` - -_LOCALTHIS -'''''''''' -.. class:: LOCALTHIS - - Alias for :class:`_LOCALTHIS` - -.. class:: _LOCALTHIS - - .. attribute:: dwFlags - - :class:`DWORD` - - - .. attribute:: dwClientThread - - :class:`DWORD` - - - .. attribute:: passthroughTraceActivity - - :class:`GUID` - - - .. attribute:: callTraceActivity - - :class:`GUID` - - - .. attribute:: asyncRequestBlock - - :class:`MIDL_XmitDefs_0001` - - - .. attribute:: reserved - - :class:`DWORD` - - - .. attribute:: pTouchedAstaArray - - :class:`PVOID` - tagBIND_OPTS '''''''''''' .. class:: BIND_OPTS @@ -26984,6 +28069,144 @@ tagCOMSD .. attribute:: SD_ACCESSRESTRICTIONS(3) +tagCPFLAGS +'''''''''' +.. class:: CPFLAGS + + Alias for :class:`tagCPFLAGS` + + +.. class:: tagCPFLAGS + + + .. attribute:: CPFLAG_NONE(0) + + + .. attribute:: CPFLAG_PROPAGATE(1) + + + .. attribute:: CPFLAG_EXPOSE(2) + + + .. attribute:: CPFLAG_ENVOY(4) + + + .. attribute:: CPFLAG_MONITORSTUB(8) + + + .. attribute:: CPFLAG_MONITORPROXY(16) + + + .. attribute:: CPFLAG_DONTCOMPARE(32) + +tagACTIVATION_STAGE +''''''''''''''''''' +.. class:: ACTIVATION_STAGE + + Alias for :class:`tagACTIVATION_STAGE` + + +.. class:: tagACTIVATION_STAGE + + + .. attribute:: CLIENT_CONTEXT_STAGE(1) + + + .. attribute:: CLIENT_MACHINE_STAGE(2) + + + .. attribute:: SERVER_MACHINE_STAGE(3) + + + .. attribute:: SERVER_PROCESS_STAGE(4) + + + .. attribute:: SERVER_CONTEXT_STAGE(5) + +tagThreadingModel +''''''''''''''''' +.. class:: ThreadingModel + + Alias for :class:`tagThreadingModel` + + +.. class:: tagThreadingModel + + + .. attribute:: ApartmentThreaded(0) + + + .. attribute:: FreeThreaded(1) + + + .. attribute:: SingleThreaded(2) + + + .. attribute:: BothThreaded(3) + + + .. attribute:: NeutralThreaded(4) + +tagLocalServerType +'''''''''''''''''' +.. class:: LocalServerType + + Alias for :class:`tagLocalServerType` + + +.. class:: tagLocalServerType + + + .. attribute:: LocalServerType16(0) + + + .. attribute:: LocalServerType32(1) + +tagSTREAM_SEEK +'''''''''''''' +.. class:: STREAM_SEEK + + Alias for :class:`tagSTREAM_SEEK` + + +.. class:: tagSTREAM_SEEK + + + .. attribute:: STREAM_SEEK_SET(0) + + + .. attribute:: STREAM_SEEK_CUR(1) + + + .. attribute:: STREAM_SEEK_END(2) + +tagMSHCTX +''''''''' +.. class:: MSHCTX + + Alias for :class:`tagMSHCTX` + + +.. class:: tagMSHCTX + + + .. attribute:: MSHCTX_LOCAL(0) + + + .. attribute:: MSHCTX_NOSHAREDMEM(1) + + + .. attribute:: MSHCTX_DIFFERENTMACHINE(2) + + + .. attribute:: MSHCTX_INPROC(3) + + + .. attribute:: MSHCTX_CROSSCTX(4) + + + .. attribute:: MSHCTX_CONTAINER(5) + _VIRTUAL_DISK_ACCESS_MASK ''''''''''''''''''''''''' .. class:: VIRTUAL_DISK_ACCESS_MASK diff --git a/tests/test_parse_pe.py b/tests/test_parse_pe.py index 1874e0b0..6fe6c3c6 100644 --- a/tests/test_parse_pe.py +++ b/tests/test_parse_pe.py @@ -20,6 +20,23 @@ def pe(request): yield proc.peb.modules[2].pe proc.exit(0) +PE_DOTNET32_DLL_NAME = "test_pe_dotnet32.dll" + +@pytest.fixture(scope="session") +def pe_dotnet32(tmpdir_factory): + tmpdir = tmpdir_factory.mktemp("pe_dotnet32_test_dir") + pe_dotnet32_data = zlib.decompress(b64decode(PE_DOTNET32_DLL_BASE64)) + fullpath = str(tmpdir.join(PE_DOTNET32_DLL_NAME)) + with open(fullpath, "wb") as f: + f.write(pe_dotnet32_data) + + try: + yield fullpath + finally: + try: + os.unlink(fullpath) + except WindowsError as e: + pass # Ignore delete fail, may happend if injected process is cleaned after the dll.. def test_pe_imports(pe): imports = pe.imports @@ -66,10 +83,13 @@ def test_pe_parsing_strange_optional_header_size(tmp_path, proc32): # Also check that section retrieval works (as its position is based on OptionalHeader Size) assert set(s.name for s in mod.pe.sections) == {".text", ".data", ".l1"} + + + # Make a test from current_process parsing ? -def test_pe_parsing_dotnet_32_process_64(proc64): +def test_pe_parsing_dotnet32_process_64(proc64, pe_dotnet32): # .NET pe32 loadable in 64bit process -> rewrite of the OptionalHeader - mod = proc64.load_library(r"C:\Windows\System32\stordiag.exe") + mod = proc64.load_library(pe_dotnet32) # It was a PE32 assert mod.pe.get_NT_HEADER().FileHeader.Machine == gdef.IMAGE_FILE_MACHINE_I386 # Now Optional Header should be 64b @@ -83,17 +103,54 @@ def test_pe_parsing_dotnet_32_process_64(proc64): assert mod.pe.sections assert ".text" in set(s.name for s in mod.pe.sections) -def test_pe_parsing_dotnet_32_current_process_64(proc64): +def test_pe_parsing_dotnet32_current_process_64(proc64, pe_dotnet32): # .NET pe32 loadable in 64bit process -> rewrite of the OptionalHeader # So we injecte python code in a the remote proc64 to test the parsing from itself PIPE_NAME = "PFW_TEST_Pipe" - mod = proc64.load_library(r"C:\Windows\System32\stordiag.exe") - assert proc64.peb.modules[-1].name == "stordiag.exe" + mod = proc64.load_library(pe_dotnet32) + assert proc64.peb.modules[-1].name == PE_DOTNET32_DLL_NAME proc64.execute_python("import sys; import windows; import windows.pipe") - proc64.execute_python("""pemod = [x for x in windows.current_process.peb.modules if x.name == 'stordiag.exe'][0].pe""") + proc64.execute_python("""pemod = [x for x in windows.current_process.peb.modules if x.name == '{0}'][0].pe""".format(PE_DOTNET32_DLL_NAME)) with windows.pipe.create(PIPE_NAME) as np: rcode = """windows.pipe.send_object("{pipe}", (list(pemod.imports), [sec.name for sec in pemod.sections]))""" proc64.execute_python(rcode.format(pipe=PIPE_NAME)) imported_dlls, sections_names = np.recv() assert imported_dlls == ['mscoree.dll'] assert ".text" in sections_names + +# A "Portable Executable 32 .NET Assembly" DLL +# Result of compiling a simple hello-world +# Can be loaded into a 64b process to witness 32 -> 64b PE conversion at load time +PE_DOTNET32_DLL_BASE64 = b""" +eNrtV01wFEUUfpNsQhJMTAQsFMFhgxhQJpsEEGIC+dkQoglEdhMKSRXMznaWkflZp3tD1oNygaOF +FwotLL1YUuUBy0LKn7K8WCUeuMHNg1VeKD1QelBKLfHrntmfhODPxYPSm37d7/Xr19973fO6M/H8 +Gaolohjq7dtEH1FYBuivy0nUlkc/aaFLjVfXf6SNX12fPmZzPR/4ucB0dcv0PF/oGaYHBU+3PT25 +P6W7fpYZzc1NGyIbkyNE41otvdP91bclu99QnJZrCaIGCivK2Y0gegnYQNivCXETVVoFqibs1tLR +U0St6q/SlhtVkrC7PzLZUbeEk0eJ7kMjHiNK0z8oehm6Kg3g91bxhmDzAu35+sivhgruKhNHjYAH +FkXYpO9Sv2mhHsQDRsAc3wqxSszKVusdekOLYc5vDNu9akodZbFoK9bSSNV6+ofFCDAr3wEYTZvX +1XQ0y3Yo9cyQpiyG+Oa2GgmjJ9HTtVNK6sgBvYDh9peJVgJ3A2p7SgS2l+NS45FYGKL2qRT1xUK3 +2kenxpJox8F/Ifkhx89EGDBdG11F1CiZX7QeejD0pyUKS03oGwEcLY/6YehPaSHKevqVrmj1NKFJ +OkUfavfTDRWOk3Qckq3am6Bfk6SvK3pZ0TVKbqt+r7Lwm3ZWa6KH6KwyrBBRGItWehXNNsVNSvfo +NfTaUWcUd3r1RcwPsf6sNdJFYGsjKXsItIk2gbZSl6I7FR1UdEzR5xQ9pKipZr1ICVoFbLJvwO9N +oCuoG3QNtA2s/DzoE3QGtIfeAH2a3gUdpkugzyp5CnSYDtPnFDtJ0Y6WSm3NwuPyMK2PYlkte6DU +7ZswbW/XBrR+tuCwXZQqcsFcY9j3uO+wEnug4AnbZXQwsAUbtz1Gw76btx0WjDKPBaZg2UGBo5Ip +CEZJlinkcmbGYRXZIOfMzTjFtC2qxWkzyDGxB3mKnfCD43fq78Ea0yzgtu/dOTjmzfqBawoMms5d +teDKrJ0rBEqvMhw6oIQHmGPOqx6/c/pkgMhYYim7bt70ipWBKEhKLuyM7diianRhJI0ILj4uEowL +I+s4NBmm7Ei1PIPNOsyS6MiwhB+U5EnbzHk+F7bFFxsvbU6KBXO2xXi0JVgM2wwWUee0P/MCzKrV +idbsJYYM4JBPT+IrP4g2AJeNTs8HF18a7T7y3sDHrRcOT7aPvU0xXdMaanXS6tBpa5NsS4xAGt7f +feSVtutNvXXg1rY0aFH+XSc/sHTNgwcDM7/P90bmLZaXPqWPBf4JrkEv/Pa3abTa2DeSHvYDNpjP +PxnFqX9uu5GAgZaV5cOStHneMYv7wFKjRrHQkfs0Wob9ZCZnIdOFLIcfMqBGdV1hN1b6Zt5a8d4t +0iYm5dpTqFdwv1xZVvlSpN4K1MdR1yJHr21YmGcXpXY6kEqmzl7fOXX7h52Dl2+ev3Eoaa6QNoZ7 +Z6Y4PJk5mBwcnRLh0bAsH/s1I3HP+JkXZiLYMx4TcFbJjXw2Q6m9g93btlNkt+2nyC6wzz/b+NT3 +P355LWd1DtU7Gys4Tpfu6SXK/MZq7ggCPTLPZBogl1uIOlNnUZbbj5E+QPfKv11q1LnC9p1cLd9m +4WuKqk+lPFM7lpCXnl5L6R+7i34HHp5nsM3nqt4952q2gk7jpjkCOkIH0BvDC20f+DHQPeFrjT6L +3fy9/Eqpsrm76j2oLUKTVLJp3IcB7NjIMgw2PZpFzpFlg5qVxqgJKce4SQJ6PriwvB+7pUkbKcgD +jHiUW8LSNaWTKP+2UgaUaDPeOhruT59cyqs1ivDIBMeUdYGWk1D9bqVbsp1UI5ZaM78AU/WcBDJe +Zc40aoCxim4XbvBEuco1GqEvcQul6wGLU4WoZNtANnYo/DI7cEY0GsdITmlLb/LwQyLLYadF9Pn3 +Ktv7I7kd2S5h8/50jTBOk5jrQ1qA3+KucUrgfbFYd7HnXVU+71AxGsQoh5aLnXGAXv+TOdG8YaLv +qg7UzU8/79s97zr6XHRNxJHh4zrzLD+L264/PpXes2VHXOfC9LKm43usP15kPL57V3NTc1OfGV3l +Okx4vD9eCLxebh1jrsm3uLYV+NyfFVss3+01uWvMdcV11/TsWSTm6er1YEzXy8bGsgy3sCguwCR/ +cd3DXdUfnyjiYnNsS704DDOfj3eGFkRQ4EI+av4mnu5wZczkzCrgaVaMeEgC9mIBOFl2MrDn8BbI +Mf43rfbEy1aq7eCSsAoS8TibY47uSNofN/mYN+cfZ0FcL9i40RjHArOmw1nklDLSuQSaEvTOBdj7 +OstBAN/XWQrqrv94ytfD/8nObb93+/0fyx8qiKxw +""" \ No newline at end of file diff --git a/tests/test_symbol.py b/tests/test_symbol.py index b9933678..bfc936ca 100644 --- a/tests/test_symbol.py +++ b/tests/test_symbol.py @@ -29,7 +29,7 @@ def test_symbols_module_info(symctx): def test_symbols_search(symctx): mod = symctx.load_file(path=u"c:\\windows\\system32\\ntdll.dll", addr=0x42000) res = symctx.search(u"ntdll!*CreateFile") - assert set(s.name for s in res) == {"NtCreateFile", "ZwCreateFile"} + assert set(s.name for s in res) >= {"NtCreateFile", "ZwCreateFile"} # May have other names def test_symbols(symctx): diff --git a/tests/test_token.py b/tests/test_token.py index 346512e0..2a57a9b2 100644 --- a/tests/test_token.py +++ b/tests/test_token.py @@ -36,7 +36,7 @@ def test_token_user(curtok): user_sid = curtok.user assert user_sid computername, username = windows.utils.lookup_sid(user_sid) - assert computername == windows.system.computer_name + assert computername.upper() == windows.system.computer_name.upper() assert username == os.environ["USERNAME"] def test_token_id(curtok): diff --git a/tests/test_wmi.py b/tests/test_wmi.py index aca003fe..a65a3f5f 100644 --- a/tests/test_wmi.py +++ b/tests/test_wmi.py @@ -75,7 +75,7 @@ def test_get_object(name, cls): # Todo: test # - put_instance -@pytest.mark.parametrize("cmdline", [r"c:\windows\notepad.exe trolol.exe"]) +@pytest.mark.parametrize("cmdline", [r"winver.exe test_string_pfw"]) def test_exec_method_Win32_Process_create(cmdline): namespace = windows.system.wmi["root\\cimv2"] win32_process_cls = namespace.get_object("Win32_Process") diff --git a/windows/com.py b/windows/com.py index 4c8f9258..418f4853 100644 --- a/windows/com.py +++ b/windows/com.py @@ -69,12 +69,22 @@ def docu(self, id): self.GetDocumentation(id, res, None, None, None) return res + +class MemoryIStream(gdef.IStream): + @classmethod + def create(cls): + self = cls() + windows.winproxy.CreateStreamOnHGlobal(ppstm=self) + return self + def create_instance(clsiid, targetinterface, custom_iid=None, context=CLSCTX_INPROC_SERVER | CLSCTX_LOCAL_SERVER): """A simple wrapper around ``CoCreateInstance ``""" if custom_iid is None: custom_iid = targetinterface.IID if isinstance(clsiid, basestring): clsiid = IID.from_string(clsiid) + if isinstance(custom_iid, basestring): + custom_iid = IID.from_string(custom_iid) winproxy.CoCreateInstance(byref(clsiid), None, context, byref(custom_iid), byref(targetinterface)) return targetinterface diff --git a/windows/debug/symbols.py b/windows/debug/symbols.py index 94e02004..d14fb7f3 100644 --- a/windows/debug/symbols.py +++ b/windows/debug/symbols.py @@ -238,6 +238,8 @@ def address(self): @property def children(self): count = self.nb_children + if count is None: + return None class res_struct(ctypes.Structure): _fields_ = [("Count", gdef.ULONG), ("Start", gdef.ULONG), ("Types", (gdef.ULONG * count))] x = res_struct() @@ -520,7 +522,7 @@ def search(self, mask, mod=0, tag=0, options=gdef.SYMSEARCH_ALLITEMS, callback=N else: callback = ctypes.WINFUNCTYPE(gdef.BOOL, ctypes.POINTER(SymbolInfo), gdef.ULONG , ctypes.py_object)(callback) - addr = getattr(mod, "addr", mod) # Retrieve mod.addr, else us the value directly + addr = getattr(mod, "addr", mod) # Retrieve mod.addr, else use the value directly windows.winproxy.SymSearchW(self.handle, gdef.DWORD64(addr), 0, tag, mask, 0, callback, res, options) for sym in res: sym.resolver = self diff --git a/windows/generated_def/interfaces.py b/windows/generated_def/interfaces.py index f1f6f62f..f928999e 100644 --- a/windows/generated_def/interfaces.py +++ b/windows/generated_def/interfaces.py @@ -20,8 +20,8 @@ class COMInterface(ctypes.c_void_p): # So COMInterface completely bypass the HRESULT # return value check on restype by setting the restype to COMHRESULT - # But we add the 'errcheck' callbakc capacity for all COMInterface and subclasses - # So the default implem of the callbakc must have the same behavior as + # But we add the 'errcheck' callback capacity for all COMInterface and subclasses + # So the default implem of the callback must have the same behavior as # standard HRESULT restype. # This is why default errcheck callback call ctypes._check_HRESULT def _default_errcheck(self, result, func, args): @@ -43,12 +43,33 @@ def __repr__(self): description = "" if not self.value else "" return "<{0}{1} at {2:#x}>".format(type(self).__name__, description, id(self)) - # Simplified API for QueryInterface for interface embeding there IID - def query(self, interfacetype): - interface = interfacetype() - self.QueryInterface(interface.IID, interface) - return interface + # Simplified API for QueryInterface for interface embeding their IID + # Or for string/Obj + def query(self, interface, target=None): + if isinstance(interface, str): # We have a GUID + interface_iid = IID.from_string(interface) + if target is None: + target = IUnknown() + elif issubclass(interface, COMInterface): # We have a PFW COM interface + interface_iid = interface.IID + if target is None: + target = interface() # Use an instance of the ComInterface as target of the QueryInterface + else: + # We have something else (A gdef.GUID probably) + interface_iid = interface + if target is None: + target = IUnknown() + self.QueryInterface(interface_iid, target) + return target + def marshal(self, target_iid=None, destination=MSHCTX_NOSHAREDMEM, flags=MSHLFLAGS_NORMAL): + if target_iid is None: + target_iid = self.IID + mystream = windows.com.MemoryIStream.create() + windows.winproxy.CoMarshalInterface(mystream, target_iid, self, destination, 0, flags) + mystream.seek(0) + buffer = mystream.read(0xffffffff) # Todo: release stuff + return buffer @@ -57,6 +78,12 @@ def query(self, interfacetype): +class IActivationStageInfo(COMInterface): + IID = generate_IID(0x000001A8, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IActivationStageInfo", strid="000001A8-0000-0000-C000-000000000046") + +class ICallFactory(COMInterface): + IID = generate_IID(0x1C733A30, 0x2A1C, 0x11CE, 0xAD, 0xE5, 0x00, 0xAA, 0x00, 0x44, 0x77, 0x3D, name="ICallFactory", strid="1C733A30-2A1C-11CE-ADE5-00AA0044773D") + class ICallFrame(COMInterface): IID = generate_IID(0xD573B4B0, 0x894E, 0x11D2, 0xB8, 0xB6, 0x00, 0xC0, 0x4F, 0xB9, 0x61, 0x8A, name="ICallFrame", strid="D573B4B0-894E-11D2-B8B6-00C04FB9618A") @@ -69,36 +96,93 @@ class ICallFrameWalker(COMInterface): class ICallInterceptor(COMInterface): IID = generate_IID(0x60C7CA75, 0x896D, 0x11D2, 0xB8, 0xB6, 0x00, 0xC0, 0x4F, 0xB9, 0x61, 0x8A, name="ICallInterceptor", strid="60C7CA75-896D-11D2-B8B6-00C04FB9618A") +class IClassFactory(COMInterface): + IID = generate_IID(0x00000001, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IClassFactory", strid="00000001-0000-0000-C000-000000000046") + +class IClientSecurity(COMInterface): + IID = generate_IID(0x0000013D, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IClientSecurity", strid="0000013D-0000-0000-C000-000000000046") + +class IComCatalog(COMInterface): + IID = generate_IID(0x000001E0, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IComCatalog", strid="000001E0-0000-0000-C000-000000000046") + class IDispatch(COMInterface): IID = generate_IID(0x00020400, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IDispatch", strid="00020400-0000-0000-C000-000000000046") class IEnumVARIANT(COMInterface): IID = generate_IID(0x00020404, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IEnumVARIANT", strid="00020404-0000-0000-C000-000000000046") +class IInternalUnknown(COMInterface): + IID = generate_IID(0x00000021, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IInternalUnknown", strid="00000021-0000-0000-C000-000000000046") + +class IMarshal(COMInterface): + IID = generate_IID(0x00000003, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IMarshal", strid="00000003-0000-0000-C000-000000000046") + +class IMoniker(COMInterface): + IID = generate_IID(0x0000000F, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IMoniker", strid="0000000F-0000-0000-C000-000000000046") + class INetFwPolicy2(COMInterface): IID = generate_IID(0x98325047, 0xC671, 0x4174, 0x8D, 0x81, 0xDE, 0xFC, 0xD3, 0xF0, 0x31, 0x86, name="INetFwPolicy2", strid="98325047-C671-4174-8D81-DEFCD3F03186") -class INetFwRules(COMInterface): - IID = generate_IID(0x9C4C6277, 0x5027, 0x441E, 0xAF, 0xAE, 0xCA, 0x1F, 0x54, 0x2D, 0xA0, 0x09, name="INetFwRules", strid="9C4C6277-5027-441E-AFAE-CA1F542DA009") - class INetFwRule(COMInterface): IID = generate_IID(0xAF230D27, 0xBABA, 0x4E42, 0xAC, 0xED, 0xF5, 0x24, 0xF2, 0x2C, 0xFC, 0xE2, name="INetFwRule", strid="AF230D27-BABA-4E42-ACED-F524F22CFCE2") +class INetFwRules(COMInterface): + IID = generate_IID(0x9C4C6277, 0x5027, 0x441E, 0xAF, 0xAE, 0xCA, 0x1F, 0x54, 0x2D, 0xA0, 0x09, name="INetFwRules", strid="9C4C6277-5027-441E-AFAE-CA1F542DA009") + class INetFwServiceRestriction(COMInterface): IID = generate_IID(0x8267BBE3, 0xF890, 0x491C, 0xB7, 0xB6, 0x2D, 0xB1, 0xEF, 0x0E, 0x5D, 0x2B, name="INetFwServiceRestriction", strid="8267BBE3-F890-491C-B7B6-2DB1EF0E5D2B") +class IObjContext(COMInterface): + IID = generate_IID(0x000001C6, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IObjContext", strid="000001C6-0000-0000-C000-000000000046") + class IPersist(COMInterface): IID = generate_IID(0x0000010C, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IPersist", strid="0000010C-0000-0000-C000-000000000046") class IPersistFile(COMInterface): IID = generate_IID(0x0000010B, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IPersistFile", strid="0000010B-0000-0000-C000-000000000046") +class IRemUnknown(COMInterface): + IID = generate_IID(0x00000131, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IRemUnknown", strid="00000131-0000-0000-C000-000000000046") + class IShellLinkA(COMInterface): IID = generate_IID(0x000214EE, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IShellLinkA", strid="000214EE-0000-0000-C000-000000000046") class IShellLinkW(COMInterface): IID = generate_IID(0x000214F9, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IShellLinkW", strid="000214F9-0000-0000-C000-000000000046") +class IStdIdentity(COMInterface): + IID = generate_IID(0x0000001b, 0x0000, 0x0000, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IStdIdentity", strid="0000001b-0000-0000-c000-000000000046") + +class IStorage(COMInterface): + IID = generate_IID(0x0000000B, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IStorage", strid="0000000B-0000-0000-C000-000000000046") + +class IStream(COMInterface): + IID = generate_IID(0x0000000C, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IStream", strid="0000000C-0000-0000-C000-000000000046") + +OLD_IStream = IStream +class IStream(OLD_IStream): + + def read(self, size): + buffer = (CHAR * size)() + size_read = ULONG() + self.Read(buffer, size, size_read) + return buffer[:size_read.value] + + + def write(self, data): + assert isinstance(data, bytes), "IStream.write() only accept bytes but {0} was passed".format(type(data)) + written = ULONG() + self.Write(data, len(data), written) + return written.value + + def seek(self, position, origin=STREAM_SEEK_SET): + newpos = ULARGE_INTEGER() + self.Seek(position, origin, newpos) + return newpos.value + + + + class ITypeComp(COMInterface): IID = generate_IID(0x00020403, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="ITypeComp", strid="00020403-0000-0000-C000-000000000046") @@ -141,6 +225,54 @@ class IEnumBackgroundCopyFiles(COMInterface): class IEnumBackgroundCopyJobs(COMInterface): IID = generate_IID(0x1AF4F612, 0x3B71, 0x466F, 0x8F, 0x58, 0x7B, 0x6F, 0x73, 0xAC, 0x57, 0xAD, name="IEnumBackgroundCopyJobs", strid="1AF4F612-3B71-466F-8F58-7B6F73AC57AD") +class IActivationProperties(COMInterface): + IID = generate_IID(0x000001AF, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IActivationProperties", strid="000001AF-0000-0000-C000-000000000046") + +class IActivationPropertiesOut(COMInterface): + IID = generate_IID(0x000001A3, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IActivationPropertiesOut", strid="000001A3-0000-0000-C000-000000000046") + +class IActivationPropertiesIn(COMInterface): + IID = generate_IID(0x000001A2, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IActivationPropertiesIn", strid="000001A2-0000-0000-C000-000000000046") + +class IClassClassicInfo(COMInterface): + IID = generate_IID(0x000001E2, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IClassClassicInfo", strid="000001E2-0000-0000-C000-000000000046") + +class IComClassInfo(COMInterface): + IID = generate_IID(0x000001E1, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IComClassInfo", strid="000001E1-0000-0000-C000-000000000046") + +class IContext(COMInterface): + IID = generate_IID(0x000001C0, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IContext", strid="000001C0-0000-0000-C000-000000000046") + +class IEnumContextProps(COMInterface): + IID = generate_IID(0x000001C1, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IEnumContextProps", strid="000001C1-0000-0000-C000-000000000046") + +class IEnumSTATSTG(COMInterface): + IID = generate_IID(0x0000000D, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IEnumSTATSTG", strid="0000000D-0000-0000-C000-000000000046") + +class IInitActivationPropertiesIn(COMInterface): + IID = generate_IID(0x000001A1, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IInitActivationPropertiesIn", strid="000001A1-0000-0000-C000-000000000046") + +class IOpaqueDataInfo(COMInterface): + IID = generate_IID(0x000001A9, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IOpaqueDataInfo", strid="000001A9-0000-0000-C000-000000000046") + +class IPrivActivationPropertiesIn(COMInterface): + IID = generate_IID(0x000001B5, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IPrivActivationPropertiesIn", strid="000001B5-0000-0000-C000-000000000046") + +class IPrivActivationPropertiesOut(COMInterface): + IID = generate_IID(0x000001B0, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IPrivActivationPropertiesOut", strid="000001B0-0000-0000-C000-000000000046") + +class IScmReplyInfo(COMInterface): + IID = generate_IID(0x000001B6, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IScmReplyInfo", strid="000001B6-0000-0000-C000-000000000046") + +class IScmRequestInfo(COMInterface): + IID = generate_IID(0x000001AA, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IScmRequestInfo", strid="000001AA-0000-0000-C000-000000000046") + +class IStandardActivator(COMInterface): + IID = generate_IID(0x000001B8, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IStandardActivator", strid="000001B8-0000-0000-C000-000000000046") + +class ISystemActivator(COMInterface): + IID = generate_IID(0x000001A0, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="ISystemActivator", strid="000001A0-0000-0000-C000-000000000046") + class IBindCtx(COMInterface): IID = generate_IID(0x0000000E, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IBindCtx", strid="0000000E-0000-0000-C000-000000000046") @@ -159,9 +291,6 @@ class IEnumString(COMInterface): class IExplorerCommand(COMInterface): IID = generate_IID(0xA08CE4D0, 0xFA25, 0x44AB, 0xB5, 0x7C, 0xC7, 0xB1, 0xC3, 0x23, 0xE0, 0xB9, name="IExplorerCommand", strid="A08CE4D0-FA25-44AB-B57C-C7B1C323E0B9") -class IMoniker(COMInterface): - IID = generate_IID(0x0000000F, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IMoniker", strid="0000000F-0000-0000-C000-000000000046") - class IRunningObjectTable(COMInterface): IID = generate_IID(0x00000010, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IRunningObjectTable", strid="00000010-0000-0000-C000-000000000046") @@ -169,10 +298,13 @@ class IShellItem(COMInterface): IID = generate_IID(0x43826D1E, 0xE718, 0x42EE, 0xBC, 0x55, 0xA1, 0xE2, 0x61, 0xC3, 0x7B, 0xFE, name="IShellItem", strid="43826D1E-E718-42EE-BC55-A1E261C37BFE") class IShellItemArray(COMInterface): - IID = generate_IID(0xB63EA76D, 0x1F85, 0x456F, 0xA1, 0x9C, 0x48, 0x15, 0x9E, 0xFA, 0x85, 0x8B, name="IShellItemArray", strid="B63EA76D-1F85-456F-A19C-48159EFA858B") + IID = generate_IID(0x787F8E92, 0x9837, 0x4011, 0x9F, 0x83, 0x7D, 0xE5, 0x93, 0xBD, 0xC0, 0x02, name="IShellItemArray", strid="787F8E92-9837-4011-9F83-7DE593BDC002") -class IStream(COMInterface): - IID = generate_IID(0x0000000C, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IStream", strid="0000000C-0000-0000-C000-000000000046") +class IProxyManager(COMInterface): + IID = generate_IID(0x00000008, 0x0000, 0x0000, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IProxyManager", strid="00000008-0000-0000-c000-000000000046") + +class IProxyServerIdentity(COMInterface): + IID = generate_IID(0x5524fe34, 0x8da7, 0x40a8, 0x81, 0x65, 0xe8, 0xb3, 0x7a, 0x8b, 0x4a, 0x4b, name="IProxyServerIdentity", strid="5524fe34-8da7-40a8-8165-e8b37a8b4a4b") class IApplicationActivationManager(COMInterface): IID = generate_IID(0x2E941141, 0x7F97, 0x4756, 0xBA, 0x1D, 0x9D, 0xEC, 0xDE, 0x89, 0x4A, 0x3D, name="IApplicationActivationManager", strid="2E941141-7F97-4756-BA1D-9DECDE894A3D") @@ -183,6 +315,21 @@ class IPackageDebugSettings(COMInterface): class IPackageExecutionStateChangeNotification(COMInterface): IID = generate_IID(0x1BB12A62, 0x2AD8, 0x432B, 0x8C, 0xCF, 0x0C, 0x2C, 0x52, 0xAF, 0xCD, 0x5B, name="IPackageExecutionStateChangeNotification", strid="1BB12A62-2AD8-432B-8CCF-0C2C52AFCD5B") +class IChannelHook(COMInterface): + IID = generate_IID(0x1008C4A0, 0x7613, 0x11CF, 0x9A, 0xF1, 0x00, 0x20, 0xAF, 0x6E, 0x72, 0xF4, name="IChannelHook", strid="1008C4A0-7613-11CF-9AF1-0020AF6E72F4") + +class IRpcChannelBuffer(COMInterface): + IID = generate_IID(0xD5F56B60, 0x593B, 0x101A, 0xB5, 0x69, 0x08, 0x00, 0x2B, 0x2D, 0xBF, 0x7A, name="IRpcChannelBuffer", strid="D5F56B60-593B-101A-B569-08002B2DBF7A") + +class IRpcHelper(COMInterface): + IID = generate_IID(0x00000149, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IRpcHelper", strid="00000149-0000-0000-C000-000000000046") + +class IRpcOptions(COMInterface): + IID = generate_IID(0x00000144, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, name="IRpcOptions", strid="00000144-0000-0000-C000-000000000046") + +class IRpcStubBuffer(COMInterface): + IID = generate_IID(0xD5F56AFC, 0x593B, 0x101A, 0xB5, 0x69, 0x08, 0x00, 0x2B, 0x2D, 0xBF, 0x7A, name="IRpcStubBuffer", strid="D5F56AFC-593B-101A-B569-08002B2DBF7A") + class IAction(COMInterface): IID = generate_IID(0xBAE54997, 0x48B1, 0x4CBE, 0x99, 0x65, 0xD6, 0xBE, 0x26, 0x3E, 0xBE, 0xA4, name="IAction", strid="BAE54997-48B1-4CBE-9965-D6BE263EBEA4") @@ -283,7 +430,33 @@ class IWbemQualifierSet(COMInterface): IID = generate_IID(0xDC12A680, 0x737F, 0x11CF, 0x88, 0x4D, 0x00, 0xAA, 0x00, 0x4B, 0x2E, 0x24, name="IWbemQualifierSet", strid="DC12A680-737F-11CF-884D-00AA004B2E24") class IWbemServices(COMInterface): - IID = generate_IID(0x9556DC99, 0x828C, 0x11CF, 0xA3, 0x7E, 0x00, 0xAA, 0x00, 0x32, 0x40, 0xC7, name="IWbemServices", strid="9556DC99-828C-11CF-A37E-00AA003240C7") + IID = generate_IID(0x0EFA6E54, 0xF313, 0x405D, 0xB5, 0xD8, 0x83, 0x0A, 0x91, 0x4F, 0x64, 0x96, name="IWbemServices", strid="0EFA6E54-F313-405D-B5D8-830A914F6496") + +IActivationStageInfo._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # SetStageAndIndex -> stage:ACTIVATION_STAGE, index:INT + "SetStageAndIndex": ctypes.WINFUNCTYPE(HRESULT, ACTIVATION_STAGE, INT)(3, "SetStageAndIndex"), + # GetStage -> pstage:*ACTIVATION_STAGE + "GetStage": ctypes.WINFUNCTYPE(HRESULT, POINTER(ACTIVATION_STAGE))(4, "GetStage"), + # GetIndex -> pindex:*INT + "GetIndex": ctypes.WINFUNCTYPE(HRESULT, POINTER(INT))(5, "GetIndex"), + } + +ICallFactory._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # CreateCall -> riid:REFIID, pCtrlUnk:*IUnknown, riid2:REFIID, ppv:**IUnknown + "CreateCall": ctypes.WINFUNCTYPE(HRESULT, REFIID, IUnknown, REFIID, POINTER(IUnknown))(3, "CreateCall"), + } ICallFrame._functions_ = { # QueryInterface -> riid:REFIID, ppvObject:**void @@ -375,6 +548,63 @@ class IWbemServices(COMInterface): "GetRegisteredSink": ctypes.WINFUNCTYPE(HRESULT, POINTER(ICallFrameEvents))(8, "GetRegisteredSink"), } +IClassFactory._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # CreateInstance -> pUnkOuter:*IUnknown, riid:REFIID, ppvObject:**void + "CreateInstance": ctypes.WINFUNCTYPE(HRESULT, IUnknown, REFIID, POINTER(PVOID))(3, "CreateInstance"), + # LockServer -> fLock:BOOL + "LockServer": ctypes.WINFUNCTYPE(HRESULT, BOOL)(4, "LockServer"), + } + +IClientSecurity._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # QueryBlanket -> pProxy:*IUnknown, pAuthnSvc:*DWORD, pAuthzSvc:*DWORD, pServerPrincName:**OLECHAR, pAuthnLevel:*DWORD, pImpLevel:*DWORD, pAuthInfo:**void, pCapabilites:*DWORD + "QueryBlanket": ctypes.WINFUNCTYPE(HRESULT, IUnknown, POINTER(DWORD), POINTER(DWORD), POINTER(POINTER(OLECHAR)), POINTER(DWORD), POINTER(DWORD), POINTER(PVOID), POINTER(DWORD))(3, "QueryBlanket"), + # SetBlanket -> pProxy:*IUnknown, dwAuthnSvc:DWORD, dwAuthzSvc:DWORD, pServerPrincName:*OLECHAR, dwAuthnLevel:DWORD, dwImpLevel:DWORD, pAuthInfo:*void, dwCapabilities:DWORD + "SetBlanket": ctypes.WINFUNCTYPE(HRESULT, IUnknown, DWORD, DWORD, POINTER(OLECHAR), DWORD, DWORD, PVOID, DWORD)(4, "SetBlanket"), + # CopyProxy -> pProxy:*IUnknown, ppCopy:**IUnknown + "CopyProxy": ctypes.WINFUNCTYPE(HRESULT, IUnknown, POINTER(IUnknown))(5, "CopyProxy"), + } + +IComCatalog._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # GetClassInfo -> guidConfiguredClsid:REFGUID, riid:REFIID, ppv:**void + "GetClassInfo": ctypes.WINFUNCTYPE(HRESULT, REFGUID, REFIID, POINTER(PVOID))(3, "GetClassInfo"), + # GetApplicationInfo -> guidApplId:REFGUID, riid:REFIID, ppv:**void + "GetApplicationInfo": ctypes.WINFUNCTYPE(HRESULT, REFGUID, REFIID, POINTER(PVOID))(4, "GetApplicationInfo"), + # GetProcessInfo -> guidProcess:REFGUID, riid:REFIID, ppv:**void + "GetProcessInfo": ctypes.WINFUNCTYPE(HRESULT, REFGUID, REFIID, POINTER(PVOID))(5, "GetProcessInfo"), + # GetServerGroupInfo -> guidServerGroup:REFGUID, riid:REFIID, ppv:**void + "GetServerGroupInfo": ctypes.WINFUNCTYPE(HRESULT, REFGUID, REFIID, POINTER(PVOID))(6, "GetServerGroupInfo"), + # GetRetQueueInfo -> wszFormatName:*WCHAR, riid:REFIID, ppv:**void + "GetRetQueueInfo": ctypes.WINFUNCTYPE(HRESULT, POINTER(WCHAR), REFIID, POINTER(PVOID))(7, "GetRetQueueInfo"), + # GetApplicationInfoForExe -> pwszExeName:*WCHAR, riid:REFIID, ppv:**void + "GetApplicationInfoForExe": ctypes.WINFUNCTYPE(HRESULT, POINTER(WCHAR), REFIID, POINTER(PVOID))(8, "GetApplicationInfoForExe"), + # GetTypeLibrary -> guidTypeLib:REFGUID, riid:REFIID, ppv:**void + "GetTypeLibrary": ctypes.WINFUNCTYPE(HRESULT, REFGUID, REFIID, POINTER(PVOID))(9, "GetTypeLibrary"), + # GetInterfaceInfo -> iidInterface:REFIID, riid:REFIID, ppv:**void + "GetInterfaceInfo": ctypes.WINFUNCTYPE(HRESULT, REFIID, REFIID, POINTER(PVOID))(10, "GetInterfaceInfo"), + # FlushCache -> + "FlushCache": ctypes.WINFUNCTYPE(HRESULT)(11, "FlushCache"), + # GetClassInfoFromProgId -> pwszProgID:*WCHAR, riid:REFIID, ppv:**void + "GetClassInfoFromProgId": ctypes.WINFUNCTYPE(HRESULT, POINTER(WCHAR), REFIID, POINTER(PVOID))(12, "GetClassInfoFromProgId"), + } + IDispatch._functions_ = { # QueryInterface -> riid:REFIID, ppvObject:**void "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), @@ -409,6 +639,87 @@ class IWbemServices(COMInterface): "Clone": ctypes.WINFUNCTYPE(HRESULT, POINTER(IEnumVARIANT))(6, "Clone"), } +IInternalUnknown._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # QueryInternalInterface -> riid:REFIID, ppv:**void + "QueryInternalInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(3, "QueryInternalInterface"), + } + +IMarshal._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # GetUnmarshalClass -> riid:REFIID, pv:*void, dwDestContext:DWORD, pvDestContext:*void, mshlflags:DWORD, pCid:*CLSID + "GetUnmarshalClass": ctypes.WINFUNCTYPE(HRESULT, REFIID, PVOID, DWORD, PVOID, DWORD, POINTER(CLSID))(3, "GetUnmarshalClass"), + # GetMarshalSizeMax -> riid:REFIID, pv:*void, dwDestContext:DWORD, pvDestContext:*void, mshlflags:DWORD, pSize:*DWORD + "GetMarshalSizeMax": ctypes.WINFUNCTYPE(HRESULT, REFIID, PVOID, DWORD, PVOID, DWORD, POINTER(DWORD))(4, "GetMarshalSizeMax"), + # MarshalInterface -> pStm:*IStream, riid:REFIID, pv:*void, dwDestContext:DWORD, pvDestContext:*void, mshlflags:DWORD + "MarshalInterface": ctypes.WINFUNCTYPE(HRESULT, IStream, REFIID, PVOID, DWORD, PVOID, DWORD)(5, "MarshalInterface"), + # UnmarshalInterface -> pStm:*IStream, riid:REFIID, ppv:**void + "UnmarshalInterface": ctypes.WINFUNCTYPE(HRESULT, IStream, REFIID, POINTER(PVOID))(6, "UnmarshalInterface"), + # ReleaseMarshalData -> pStm:*IStream + "ReleaseMarshalData": ctypes.WINFUNCTYPE(HRESULT, IStream)(7, "ReleaseMarshalData"), + # DisconnectObject -> dwReserved:DWORD + "DisconnectObject": ctypes.WINFUNCTYPE(HRESULT, DWORD)(8, "DisconnectObject"), + } + +IMoniker._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # GetClassID -> pClassID:*CLSID + "GetClassID": ctypes.WINFUNCTYPE(HRESULT, POINTER(CLSID))(3, "GetClassID"), + # IsDirty -> + "IsDirty": ctypes.WINFUNCTYPE(HRESULT)(4, "IsDirty"), + # Load -> pStm:*IStream + "Load": ctypes.WINFUNCTYPE(HRESULT, IStream)(5, "Load"), + # Save -> pStm:*IStream, fClearDirty:BOOL + "Save": ctypes.WINFUNCTYPE(HRESULT, IStream, BOOL)(6, "Save"), + # GetSizeMax -> pcbSize:*ULARGE_INTEGER + "GetSizeMax": ctypes.WINFUNCTYPE(HRESULT, POINTER(ULARGE_INTEGER))(7, "GetSizeMax"), + # BindToObject -> pbc:*IBindCtx, pmkToLeft:*IMoniker, riidResult:REFIID, ppvResult:**void + "BindToObject": ctypes.WINFUNCTYPE(HRESULT, IBindCtx, IMoniker, REFIID, POINTER(PVOID))(8, "BindToObject"), + # BindToStorage -> pbc:*IBindCtx, pmkToLeft:*IMoniker, riid:REFIID, ppvObj:**void + "BindToStorage": ctypes.WINFUNCTYPE(HRESULT, IBindCtx, IMoniker, REFIID, POINTER(PVOID))(9, "BindToStorage"), + # Reduce -> pbc:*IBindCtx, dwReduceHowFar:DWORD, ppmkToLeft:**IMoniker, ppmkReduced:**IMoniker + "Reduce": ctypes.WINFUNCTYPE(HRESULT, IBindCtx, DWORD, POINTER(IMoniker), POINTER(IMoniker))(10, "Reduce"), + # ComposeWith -> pmkRight:*IMoniker, fOnlyIfNotGeneric:BOOL, ppmkComposite:**IMoniker + "ComposeWith": ctypes.WINFUNCTYPE(HRESULT, IMoniker, BOOL, POINTER(IMoniker))(11, "ComposeWith"), + # Enum -> fForward:BOOL, ppenumMoniker:**IEnumMoniker + "Enum": ctypes.WINFUNCTYPE(HRESULT, BOOL, POINTER(IEnumMoniker))(12, "Enum"), + # IsEqual -> pmkOtherMoniker:*IMoniker + "IsEqual": ctypes.WINFUNCTYPE(HRESULT, IMoniker)(13, "IsEqual"), + # Hash -> pdwHash:*DWORD + "Hash": ctypes.WINFUNCTYPE(HRESULT, POINTER(DWORD))(14, "Hash"), + # IsRunning -> pbc:*IBindCtx, pmkToLeft:*IMoniker, pmkNewlyRunning:*IMoniker + "IsRunning": ctypes.WINFUNCTYPE(HRESULT, IBindCtx, IMoniker, IMoniker)(15, "IsRunning"), + # GetTimeOfLastChange -> pbc:*IBindCtx, pmkToLeft:*IMoniker, pFileTime:*FILETIME + "GetTimeOfLastChange": ctypes.WINFUNCTYPE(HRESULT, IBindCtx, IMoniker, POINTER(FILETIME))(16, "GetTimeOfLastChange"), + # Inverse -> ppmk:**IMoniker + "Inverse": ctypes.WINFUNCTYPE(HRESULT, POINTER(IMoniker))(17, "Inverse"), + # CommonPrefixWith -> pmkOther:*IMoniker, ppmkPrefix:**IMoniker + "CommonPrefixWith": ctypes.WINFUNCTYPE(HRESULT, IMoniker, POINTER(IMoniker))(18, "CommonPrefixWith"), + # RelativePathTo -> pmkOther:*IMoniker, ppmkRelPath:**IMoniker + "RelativePathTo": ctypes.WINFUNCTYPE(HRESULT, IMoniker, POINTER(IMoniker))(19, "RelativePathTo"), + # GetDisplayName -> pbc:*IBindCtx, pmkToLeft:*IMoniker, ppszDisplayName:*LPOLESTR + "GetDisplayName": ctypes.WINFUNCTYPE(HRESULT, IBindCtx, IMoniker, POINTER(LPOLESTR))(20, "GetDisplayName"), + # ParseDisplayName -> pbc:*IBindCtx, pmkToLeft:*IMoniker, pszDisplayName:LPOLESTR, pchEaten:*ULONG, ppmkOut:**IMoniker + "ParseDisplayName": ctypes.WINFUNCTYPE(HRESULT, IBindCtx, IMoniker, LPOLESTR, POINTER(ULONG), POINTER(IMoniker))(21, "ParseDisplayName"), + # IsSystemMoniker -> pdwMksys:*DWORD + "IsSystemMoniker": ctypes.WINFUNCTYPE(HRESULT, POINTER(DWORD))(22, "IsSystemMoniker"), + } + INetFwPolicy2._functions_ = { # QueryInterface -> riid:REFIID, ppvObject:**void "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), @@ -470,33 +781,6 @@ class IWbemServices(COMInterface): "get_LocalPolicyModifyState": ctypes.WINFUNCTYPE(HRESULT, POINTER(NET_FW_MODIFY_STATE))(28, "get_LocalPolicyModifyState"), } -INetFwRules._functions_ = { - # QueryInterface -> riid:REFIID, ppvObject:**void - "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), - # AddRef -> - "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), - # Release -> - "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), - # GetTypeInfoCount -> pctinfo:*UINT - "GetTypeInfoCount": ctypes.WINFUNCTYPE(HRESULT, POINTER(UINT))(3, "GetTypeInfoCount"), - # GetTypeInfo -> iTInfo:UINT, lcid:LCID, ppTInfo:**ITypeInfo - "GetTypeInfo": ctypes.WINFUNCTYPE(HRESULT, UINT, LCID, POINTER(ITypeInfo))(4, "GetTypeInfo"), - # GetIDsOfNames -> riid:REFIID, rgszNames:*LPOLESTR, cNames:UINT, lcid:LCID, rgDispId:*DISPID - "GetIDsOfNames": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(LPOLESTR), UINT, LCID, POINTER(DISPID))(5, "GetIDsOfNames"), - # Invoke -> dispIdMember:DISPID, riid:REFIID, lcid:LCID, wFlags:WORD, pDispParams:*DISPPARAMS, pVarResult:*VARIANT, pExcepInfo:*EXCEPINFO, puArgErr:*UINT - "Invoke": ctypes.WINFUNCTYPE(HRESULT, DISPID, REFIID, LCID, WORD, POINTER(DISPPARAMS), POINTER(VARIANT), POINTER(EXCEPINFO), POINTER(UINT))(6, "Invoke"), - # get_Count -> count:*LONG - "get_Count": ctypes.WINFUNCTYPE(HRESULT, POINTER(LONG))(7, "get_Count"), - # Add -> rule:*INetFwRule - "Add": ctypes.WINFUNCTYPE(HRESULT, INetFwRule)(8, "Add"), - # Remove -> name:BSTR - "Remove": ctypes.WINFUNCTYPE(HRESULT, BSTR)(9, "Remove"), - # Item -> name:BSTR, rule:**INetFwRule - "Item": ctypes.WINFUNCTYPE(HRESULT, BSTR, POINTER(INetFwRule))(10, "Item"), - # get__NewEnum -> newEnum:**IUnknown - "get__NewEnum": ctypes.WINFUNCTYPE(HRESULT, POINTER(IUnknown))(11, "get__NewEnum"), - } - INetFwRule._functions_ = { # QueryInterface -> riid:REFIID, ppvObject:**void "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), @@ -586,6 +870,33 @@ class IWbemServices(COMInterface): "put_Action": ctypes.WINFUNCTYPE(HRESULT, NET_FW_ACTION)(42, "put_Action"), } +INetFwRules._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # GetTypeInfoCount -> pctinfo:*UINT + "GetTypeInfoCount": ctypes.WINFUNCTYPE(HRESULT, POINTER(UINT))(3, "GetTypeInfoCount"), + # GetTypeInfo -> iTInfo:UINT, lcid:LCID, ppTInfo:**ITypeInfo + "GetTypeInfo": ctypes.WINFUNCTYPE(HRESULT, UINT, LCID, POINTER(ITypeInfo))(4, "GetTypeInfo"), + # GetIDsOfNames -> riid:REFIID, rgszNames:*LPOLESTR, cNames:UINT, lcid:LCID, rgDispId:*DISPID + "GetIDsOfNames": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(LPOLESTR), UINT, LCID, POINTER(DISPID))(5, "GetIDsOfNames"), + # Invoke -> dispIdMember:DISPID, riid:REFIID, lcid:LCID, wFlags:WORD, pDispParams:*DISPPARAMS, pVarResult:*VARIANT, pExcepInfo:*EXCEPINFO, puArgErr:*UINT + "Invoke": ctypes.WINFUNCTYPE(HRESULT, DISPID, REFIID, LCID, WORD, POINTER(DISPPARAMS), POINTER(VARIANT), POINTER(EXCEPINFO), POINTER(UINT))(6, "Invoke"), + # get_Count -> count:*LONG + "get_Count": ctypes.WINFUNCTYPE(HRESULT, POINTER(LONG))(7, "get_Count"), + # Add -> rule:*INetFwRule + "Add": ctypes.WINFUNCTYPE(HRESULT, INetFwRule)(8, "Add"), + # Remove -> name:BSTR + "Remove": ctypes.WINFUNCTYPE(HRESULT, BSTR)(9, "Remove"), + # Item -> name:BSTR, rule:**INetFwRule + "Item": ctypes.WINFUNCTYPE(HRESULT, BSTR, POINTER(INetFwRule))(10, "Item"), + # get__NewEnum -> newEnum:**IUnknown + "get__NewEnum": ctypes.WINFUNCTYPE(HRESULT, POINTER(IUnknown))(11, "get__NewEnum"), + } + INetFwServiceRestriction._functions_ = { # QueryInterface -> riid:REFIID, ppvObject:**void "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), @@ -609,6 +920,37 @@ class IWbemServices(COMInterface): "get_Rules": ctypes.WINFUNCTYPE(HRESULT, POINTER(INetFwRules))(9, "get_Rules"), } +IObjContext._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # SetProperty -> rpolicyId:REFGUID, flags:CPFLAGS, pUnk:*IUnknown + "SetProperty": ctypes.WINFUNCTYPE(HRESULT, REFGUID, CPFLAGS, IUnknown)(3, "SetProperty"), + # RemoveProperty -> rPolicyId:REFGUID + "RemoveProperty": ctypes.WINFUNCTYPE(HRESULT, REFGUID)(4, "RemoveProperty"), + # GetProperty -> rGuid:REFGUID, pFlags:*CPFLAGS, ppUnk:**IUnknown + "GetProperty": ctypes.WINFUNCTYPE(HRESULT, REFGUID, POINTER(CPFLAGS), POINTER(IUnknown))(5, "GetProperty"), + # EnumContextProps -> ppEnumContextProps:**IEnumContextProps + "EnumContextProps": ctypes.WINFUNCTYPE(HRESULT, POINTER(IEnumContextProps))(6, "EnumContextProps"), + # Reserved1 -> + "Reserved1": ctypes.WINFUNCTYPE(PVOID)(7, "Reserved1"), + # Reserved2 -> + "Reserved2": ctypes.WINFUNCTYPE(PVOID)(8, "Reserved2"), + # Reserved3 -> + "Reserved3": ctypes.WINFUNCTYPE(PVOID)(9, "Reserved3"), + # Reserved4 -> + "Reserved4": ctypes.WINFUNCTYPE(PVOID)(10, "Reserved4"), + # Reserved5 -> + "Reserved5": ctypes.WINFUNCTYPE(PVOID)(11, "Reserved5"), + # Reserved6 -> + "Reserved6": ctypes.WINFUNCTYPE(PVOID)(12, "Reserved6"), + # Reserved7 -> + "Reserved7": ctypes.WINFUNCTYPE(PVOID)(13, "Reserved7"), + } + IPersist._functions_ = { # QueryInterface -> riid:REFIID, ppvObject:**void "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), @@ -641,6 +983,21 @@ class IWbemServices(COMInterface): "GetCurFile": ctypes.WINFUNCTYPE(HRESULT, POINTER(LPOLESTR))(8, "GetCurFile"), } +IRemUnknown._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # RemQueryInterface -> ripid:REFIPID, cRefs:ULONG, cIids:USHORT, iids:*IID, ppQIResults:**REMQIRESULT + "RemQueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIPID, ULONG, USHORT, POINTER(IID), POINTER(POINTER(REMQIRESULT)))(3, "RemQueryInterface"), + # RemAddRef -> cInterfaceRefs:USHORT, InterfaceRefs:*REMINTERFACEREF, pResults:*HRESULT + "RemAddRef": ctypes.WINFUNCTYPE(HRESULT, USHORT, POINTER(REMINTERFACEREF), POINTER(HRESULT))(4, "RemAddRef"), + # RemRelease -> cInterfaceRefs:USHORT, InterfaceRefs:*REMINTERFACEREF + "RemRelease": ctypes.WINFUNCTYPE(HRESULT, USHORT, POINTER(REMINTERFACEREF))(5, "RemRelease"), + } + IShellLinkA._functions_ = { # QueryInterface -> riid:REFIID, ppvObject:**void "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), @@ -731,41 +1088,120 @@ class IWbemServices(COMInterface): "SetPath": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR)(20, "SetPath"), } -ITypeComp._functions_ = { - # QueryInterface -> riid:REFIID, ppvObject:*PVOID +IStdIdentity._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), # AddRef -> "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), # Release -> "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), - # Bind -> szName:LPOLESTR, lHashVal:ULONG, wFlags:WORD, ppTInfo:**ITypeInfo, pDescKind:*DESCKIND, pBindPtr:*BINDPTR - "Bind": ctypes.WINFUNCTYPE(HRESULT, LPOLESTR, ULONG, WORD, POINTER(ITypeInfo), POINTER(DESCKIND), POINTER(BINDPTR))(3, "Bind"), - # BindType -> szName:LPOLESTR, lHashVal:ULONG, ppTInfo:**ITypeInfo, ppTComp:**ITypeComp - "BindType": ctypes.WINFUNCTYPE(HRESULT, LPOLESTR, ULONG, POINTER(ITypeInfo), POINTER(ITypeComp))(4, "BindType"), } -ITypeInfo._functions_ = { +IStorage._functions_ = { # QueryInterface -> riid:REFIID, ppvObject:**void "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), # AddRef -> "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), # Release -> "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), - # GetTypeAttr -> ppTypeAttr:**TYPEATTR - "GetTypeAttr": ctypes.WINFUNCTYPE(HRESULT, POINTER(POINTER(TYPEATTR)))(3, "GetTypeAttr"), - # GetTypeComp -> ppTComp:**ITypeComp - "GetTypeComp": ctypes.WINFUNCTYPE(HRESULT, POINTER(ITypeComp))(4, "GetTypeComp"), - # GetFuncDesc -> index:UINT, ppFuncDesc:**FUNCDESC - "GetFuncDesc": ctypes.WINFUNCTYPE(HRESULT, UINT, POINTER(POINTER(FUNCDESC)))(5, "GetFuncDesc"), - # GetVarDesc -> index:UINT, ppVarDesc:**VARDESC - "GetVarDesc": ctypes.WINFUNCTYPE(HRESULT, UINT, POINTER(POINTER(VARDESC)))(6, "GetVarDesc"), - # GetNames -> memid:MEMBERID, rgBstrNames:*BSTR, cMaxNames:UINT, pcNames:*UINT - "GetNames": ctypes.WINFUNCTYPE(HRESULT, MEMBERID, POINTER(BSTR), UINT, POINTER(UINT))(7, "GetNames"), - # GetRefTypeOfImplType -> index:UINT, pRefType:*HREFTYPE - "GetRefTypeOfImplType": ctypes.WINFUNCTYPE(HRESULT, UINT, POINTER(HREFTYPE))(8, "GetRefTypeOfImplType"), - # GetImplTypeFlags -> index:UINT, pImplTypeFlags:*INT - "GetImplTypeFlags": ctypes.WINFUNCTYPE(HRESULT, UINT, POINTER(INT))(9, "GetImplTypeFlags"), - # GetIDsOfNames -> rgszNames:*LPOLESTR, cNames:UINT, pMemId:*MEMBERID + # CreateStream -> pwcsName:*OLECHAR, grfMode:DWORD, reserved1:DWORD, reserved2:DWORD, ppstm:**IStream + "CreateStream": ctypes.WINFUNCTYPE(HRESULT, POINTER(OLECHAR), DWORD, DWORD, DWORD, POINTER(IStream))(3, "CreateStream"), + # OpenStream -> pwcsName:*OLECHAR, reserved1:*void, grfMode:DWORD, reserved2:DWORD, ppstm:**IStream + "OpenStream": ctypes.WINFUNCTYPE(HRESULT, POINTER(OLECHAR), PVOID, DWORD, DWORD, POINTER(IStream))(4, "OpenStream"), + # CreateStorage -> pwcsName:*OLECHAR, grfMode:DWORD, reserved1:DWORD, reserved2:DWORD, ppstg:**IStorage + "CreateStorage": ctypes.WINFUNCTYPE(HRESULT, POINTER(OLECHAR), DWORD, DWORD, DWORD, POINTER(IStorage))(5, "CreateStorage"), + # OpenStorage -> pwcsName:*OLECHAR, pstgPriority:*IStorage, grfMode:DWORD, snbExclude:SNB, reserved:DWORD, ppstg:**IStorage + "OpenStorage": ctypes.WINFUNCTYPE(HRESULT, POINTER(OLECHAR), IStorage, DWORD, SNB, DWORD, POINTER(IStorage))(6, "OpenStorage"), + # CopyTo -> ciidExclude:DWORD, rgiidExclude:*IID, snbExclude:SNB, pstgDest:*IStorage + "CopyTo": ctypes.WINFUNCTYPE(HRESULT, DWORD, POINTER(IID), SNB, IStorage)(7, "CopyTo"), + # MoveElementTo -> pwcsName:*OLECHAR, pstgDest:*IStorage, pwcsNewName:*OLECHAR, grfFlags:DWORD + "MoveElementTo": ctypes.WINFUNCTYPE(HRESULT, POINTER(OLECHAR), IStorage, POINTER(OLECHAR), DWORD)(8, "MoveElementTo"), + # Commit -> grfCommitFlags:DWORD + "Commit": ctypes.WINFUNCTYPE(HRESULT, DWORD)(9, "Commit"), + # Revert -> + "Revert": ctypes.WINFUNCTYPE(HRESULT)(10, "Revert"), + # EnumElements -> reserved1:DWORD, reserved2:*void, reserved3:DWORD, ppenum:**IEnumSTATSTG + "EnumElements": ctypes.WINFUNCTYPE(HRESULT, DWORD, PVOID, DWORD, POINTER(IEnumSTATSTG))(11, "EnumElements"), + # DestroyElement -> pwcsName:*OLECHAR + "DestroyElement": ctypes.WINFUNCTYPE(HRESULT, POINTER(OLECHAR))(12, "DestroyElement"), + # RenameElement -> pwcsOldName:*OLECHAR, pwcsNewName:*OLECHAR + "RenameElement": ctypes.WINFUNCTYPE(HRESULT, POINTER(OLECHAR), POINTER(OLECHAR))(13, "RenameElement"), + # SetElementTimes -> pwcsName:*OLECHAR, pctime:*FILETIME, patime:*FILETIME, pmtime:*FILETIME + "SetElementTimes": ctypes.WINFUNCTYPE(HRESULT, POINTER(OLECHAR), POINTER(FILETIME), POINTER(FILETIME), POINTER(FILETIME))(14, "SetElementTimes"), + # SetClass -> clsid:REFCLSID + "SetClass": ctypes.WINFUNCTYPE(HRESULT, REFCLSID)(15, "SetClass"), + # SetStateBits -> grfStateBits:DWORD, grfMask:DWORD + "SetStateBits": ctypes.WINFUNCTYPE(HRESULT, DWORD, DWORD)(16, "SetStateBits"), + # Stat -> pstatstg:*STATSTG, grfStatFlag:DWORD + "Stat": ctypes.WINFUNCTYPE(HRESULT, POINTER(STATSTG), DWORD)(17, "Stat"), + } + +IStream._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # Read -> pv:*void, cb:ULONG, pcbRead:*ULONG + "Read": ctypes.WINFUNCTYPE(HRESULT, PVOID, ULONG, POINTER(ULONG))(3, "Read"), + # Write -> pv:*void, cb:ULONG, pcbWritten:*ULONG + "Write": ctypes.WINFUNCTYPE(HRESULT, PVOID, ULONG, POINTER(ULONG))(4, "Write"), + # Seek -> dlibMove:LARGE_INTEGER, dwOrigin:DWORD, plibNewPosition:*ULARGE_INTEGER + "Seek": ctypes.WINFUNCTYPE(HRESULT, LARGE_INTEGER, DWORD, POINTER(ULARGE_INTEGER))(5, "Seek"), + # SetSize -> libNewSize:ULARGE_INTEGER + "SetSize": ctypes.WINFUNCTYPE(HRESULT, ULARGE_INTEGER)(6, "SetSize"), + # CopyTo -> pstm:*IStream, cb:ULARGE_INTEGER, pcbRead:*ULARGE_INTEGER, pcbWritten:*ULARGE_INTEGER + "CopyTo": ctypes.WINFUNCTYPE(HRESULT, IStream, ULARGE_INTEGER, POINTER(ULARGE_INTEGER), POINTER(ULARGE_INTEGER))(7, "CopyTo"), + # Commit -> grfCommitFlags:DWORD + "Commit": ctypes.WINFUNCTYPE(HRESULT, DWORD)(8, "Commit"), + # Revert -> + "Revert": ctypes.WINFUNCTYPE(HRESULT)(9, "Revert"), + # LockRegion -> libOffset:ULARGE_INTEGER, cb:ULARGE_INTEGER, dwLockType:DWORD + "LockRegion": ctypes.WINFUNCTYPE(HRESULT, ULARGE_INTEGER, ULARGE_INTEGER, DWORD)(10, "LockRegion"), + # UnlockRegion -> libOffset:ULARGE_INTEGER, cb:ULARGE_INTEGER, dwLockType:DWORD + "UnlockRegion": ctypes.WINFUNCTYPE(HRESULT, ULARGE_INTEGER, ULARGE_INTEGER, DWORD)(11, "UnlockRegion"), + # Stat -> pstatstg:*STATSTG, grfStatFlag:DWORD + "Stat": ctypes.WINFUNCTYPE(HRESULT, POINTER(STATSTG), DWORD)(12, "Stat"), + # Clone -> ppstm:**IStream + "Clone": ctypes.WINFUNCTYPE(HRESULT, POINTER(IStream))(13, "Clone"), + } + +ITypeComp._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:*PVOID + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # Bind -> szName:LPOLESTR, lHashVal:ULONG, wFlags:WORD, ppTInfo:**ITypeInfo, pDescKind:*DESCKIND, pBindPtr:*BINDPTR + "Bind": ctypes.WINFUNCTYPE(HRESULT, LPOLESTR, ULONG, WORD, POINTER(ITypeInfo), POINTER(DESCKIND), POINTER(BINDPTR))(3, "Bind"), + # BindType -> szName:LPOLESTR, lHashVal:ULONG, ppTInfo:**ITypeInfo, ppTComp:**ITypeComp + "BindType": ctypes.WINFUNCTYPE(HRESULT, LPOLESTR, ULONG, POINTER(ITypeInfo), POINTER(ITypeComp))(4, "BindType"), + } + +ITypeInfo._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # GetTypeAttr -> ppTypeAttr:**TYPEATTR + "GetTypeAttr": ctypes.WINFUNCTYPE(HRESULT, POINTER(POINTER(TYPEATTR)))(3, "GetTypeAttr"), + # GetTypeComp -> ppTComp:**ITypeComp + "GetTypeComp": ctypes.WINFUNCTYPE(HRESULT, POINTER(ITypeComp))(4, "GetTypeComp"), + # GetFuncDesc -> index:UINT, ppFuncDesc:**FUNCDESC + "GetFuncDesc": ctypes.WINFUNCTYPE(HRESULT, UINT, POINTER(POINTER(FUNCDESC)))(5, "GetFuncDesc"), + # GetVarDesc -> index:UINT, ppVarDesc:**VARDESC + "GetVarDesc": ctypes.WINFUNCTYPE(HRESULT, UINT, POINTER(POINTER(VARDESC)))(6, "GetVarDesc"), + # GetNames -> memid:MEMBERID, rgBstrNames:*BSTR, cMaxNames:UINT, pcNames:*UINT + "GetNames": ctypes.WINFUNCTYPE(HRESULT, MEMBERID, POINTER(BSTR), UINT, POINTER(UINT))(7, "GetNames"), + # GetRefTypeOfImplType -> index:UINT, pRefType:*HREFTYPE + "GetRefTypeOfImplType": ctypes.WINFUNCTYPE(HRESULT, UINT, POINTER(HREFTYPE))(8, "GetRefTypeOfImplType"), + # GetImplTypeFlags -> index:UINT, pImplTypeFlags:*INT + "GetImplTypeFlags": ctypes.WINFUNCTYPE(HRESULT, UINT, POINTER(INT))(9, "GetImplTypeFlags"), + # GetIDsOfNames -> rgszNames:*LPOLESTR, cNames:UINT, pMemId:*MEMBERID "GetIDsOfNames": ctypes.WINFUNCTYPE(HRESULT, POINTER(LPOLESTR), UINT, POINTER(MEMBERID))(10, "GetIDsOfNames"), # Invoke -> pvInstance:PVOID, memid:MEMBERID, wFlags:WORD, pDispParams:*DISPPARAMS, pVarResult:*VARIANT, pExcepInfo:*EXCEPINFO, puArgErr:*UINT "Invoke": ctypes.WINFUNCTYPE(HRESULT, PVOID, MEMBERID, WORD, POINTER(DISPPARAMS), POINTER(VARIANT), POINTER(EXCEPINFO), POINTER(UINT))(11, "Invoke"), @@ -1141,6 +1577,362 @@ class IWbemServices(COMInterface): "GetCount": ctypes.WINFUNCTYPE(HRESULT, POINTER(ULONG))(7, "GetCount"), } +IActivationProperties._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # GetUnmarshalClass -> riid:REFIID, pv:*void, dwDestContext:DWORD, pvDestContext:*void, mshlflags:DWORD, pCid:*CLSID + "GetUnmarshalClass": ctypes.WINFUNCTYPE(HRESULT, REFIID, PVOID, DWORD, PVOID, DWORD, POINTER(CLSID))(3, "GetUnmarshalClass"), + # GetMarshalSizeMax -> riid:REFIID, pv:*void, dwDestContext:DWORD, pvDestContext:*void, mshlflags:DWORD, pSize:*DWORD + "GetMarshalSizeMax": ctypes.WINFUNCTYPE(HRESULT, REFIID, PVOID, DWORD, PVOID, DWORD, POINTER(DWORD))(4, "GetMarshalSizeMax"), + # MarshalInterface -> pStm:*IStream, riid:REFIID, pv:*void, dwDestContext:DWORD, pvDestContext:*void, mshlflags:DWORD + "MarshalInterface": ctypes.WINFUNCTYPE(HRESULT, IStream, REFIID, PVOID, DWORD, PVOID, DWORD)(5, "MarshalInterface"), + # UnmarshalInterface -> pStm:*IStream, riid:REFIID, ppv:**void + "UnmarshalInterface": ctypes.WINFUNCTYPE(HRESULT, IStream, REFIID, POINTER(PVOID))(6, "UnmarshalInterface"), + # ReleaseMarshalData -> pStm:*IStream + "ReleaseMarshalData": ctypes.WINFUNCTYPE(HRESULT, IStream)(7, "ReleaseMarshalData"), + # DisconnectObject -> dwReserved:DWORD + "DisconnectObject": ctypes.WINFUNCTYPE(HRESULT, DWORD)(8, "DisconnectObject"), + # SetDestCtx -> dwDestCtx:DWORD + "SetDestCtx": ctypes.WINFUNCTYPE(HRESULT, DWORD)(9, "SetDestCtx"), + # SetMarshalFlags -> dwMarshalFlags:DWORD + "SetMarshalFlags": ctypes.WINFUNCTYPE(HRESULT, DWORD)(10, "SetMarshalFlags"), + # SetLocalBlob -> blob:*void + "SetLocalBlob": ctypes.WINFUNCTYPE(HRESULT, PVOID)(11, "SetLocalBlob"), + # GetLocalBlob -> blob:**void + "GetLocalBlob": ctypes.WINFUNCTYPE(HRESULT, POINTER(PVOID))(12, "GetLocalBlob"), + } + +IActivationPropertiesOut._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # GetActivationID -> pActivationID:*GUID + "GetActivationID": ctypes.WINFUNCTYPE(HRESULT, POINTER(GUID))(3, "GetActivationID"), + # GetObjectInterface -> riid:REFIID, actvflags:DWORD, ppv:**void + "GetObjectInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, DWORD, POINTER(PVOID))(4, "GetObjectInterface"), + # GetObjectInterfaces -> cIfs:DWORD, actvflags:DWORD, multiQi:*MULTI_QI + "GetObjectInterfaces": ctypes.WINFUNCTYPE(HRESULT, DWORD, DWORD, POINTER(MULTI_QI))(5, "GetObjectInterfaces"), + # RemoveRequestedIIDs -> cIfs:DWORD, rgIID:*IID + "RemoveRequestedIIDs": ctypes.WINFUNCTYPE(HRESULT, DWORD, POINTER(IID))(6, "RemoveRequestedIIDs"), + } + +IActivationPropertiesIn._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # GetActivationID -> pActivationID:*GUID + "GetActivationID": ctypes.WINFUNCTYPE(HRESULT, POINTER(GUID))(3, "GetActivationID"), + # GetClassInfo -> riid:REFIID, ppv:**void + "GetClassInfo": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(4, "GetClassInfo"), + # GetClsctx -> pclsctx:*DWORD + "GetClsctx": ctypes.WINFUNCTYPE(HRESULT, POINTER(DWORD))(5, "GetClsctx"), + # GetActivationFlags -> pactvflags:*DWORD + "GetActivationFlags": ctypes.WINFUNCTYPE(HRESULT, POINTER(DWORD))(6, "GetActivationFlags"), + # AddRequestedIIDs -> cIfs:DWORD, rgIID:*IID + "AddRequestedIIDs": ctypes.WINFUNCTYPE(HRESULT, DWORD, POINTER(IID))(7, "AddRequestedIIDs"), + # GetRequestedIIDs -> pulCount:*ULONG, prgIID:**IID + "GetRequestedIIDs": ctypes.WINFUNCTYPE(HRESULT, POINTER(ULONG), POINTER(POINTER(IID)))(8, "GetRequestedIIDs"), + # DelegateGetClassObject -> pActPropsOut:**IActivationPropertiesOut + "DelegateGetClassObject": ctypes.WINFUNCTYPE(HRESULT, POINTER(IActivationPropertiesOut))(9, "DelegateGetClassObject"), + # DelegateCreateInstance -> pUnkOuter:*IUnknown, pActPropsOut:**IActivationPropertiesOut + "DelegateCreateInstance": ctypes.WINFUNCTYPE(HRESULT, IUnknown, POINTER(IActivationPropertiesOut))(10, "DelegateCreateInstance"), + # DelegateCIAndGetCF -> pUnkOuter:*IUnknown, pActPropsOut:**IActivationPropertiesOut, ppCf:**IClassFactory + "DelegateCIAndGetCF": ctypes.WINFUNCTYPE(HRESULT, IUnknown, POINTER(IActivationPropertiesOut), POINTER(IClassFactory))(11, "DelegateCIAndGetCF"), + # GetReturnActivationProperties -> pUnk:*IUnknown, ppActOut:**IActivationPropertiesOut + "GetReturnActivationProperties": ctypes.WINFUNCTYPE(HRESULT, IUnknown, POINTER(IActivationPropertiesOut))(12, "GetReturnActivationProperties"), + } + +IClassClassicInfo._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # GetThreadingModel -> pthreadmodel:*ThreadingModel + "GetThreadingModel": ctypes.WINFUNCTYPE(HRESULT, POINTER(ThreadingModel))(3, "GetThreadingModel"), + # GetModulePath -> clsctx:CLSCTX, pwszDllName:**WCHAR + "GetModulePath": ctypes.WINFUNCTYPE(HRESULT, CLSCTX, POINTER(POINTER(WCHAR)))(4, "GetModulePath"), + # GetImplementedClsid -> ppguidClsid:**GUID + "GetImplementedClsid": ctypes.WINFUNCTYPE(HRESULT, POINTER(POINTER(GUID)))(5, "GetImplementedClsid"), + # GetProcess -> riid:REFIID, ppv:**void + "GetProcess": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(6, "GetProcess"), + # GetRemoteServerName -> pwszServerName:**WCHAR + "GetRemoteServerName": ctypes.WINFUNCTYPE(HRESULT, POINTER(POINTER(WCHAR)))(7, "GetRemoteServerName"), + # GetLocalServerType -> pType:*LocalServerType + "GetLocalServerType": ctypes.WINFUNCTYPE(HRESULT, POINTER(LocalServerType))(8, "GetLocalServerType"), + # GetSurrogateCommandLine -> pwszSurrogateCommandLine:**WCHAR + "GetSurrogateCommandLine": ctypes.WINFUNCTYPE(HRESULT, POINTER(POINTER(WCHAR)))(9, "GetSurrogateCommandLine"), + } + +IComClassInfo._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # GetConfiguredClsid -> ppguidClsid:**GUID + "GetConfiguredClsid": ctypes.WINFUNCTYPE(HRESULT, POINTER(POINTER(GUID)))(3, "GetConfiguredClsid"), + # GetProgId -> pwszProgid:**WCHAR + "GetProgId": ctypes.WINFUNCTYPE(HRESULT, POINTER(POINTER(WCHAR)))(4, "GetProgId"), + # GetClassName -> pwszClassName:**WCHAR + "GetClassName": ctypes.WINFUNCTYPE(HRESULT, POINTER(POINTER(WCHAR)))(5, "GetClassName"), + # GetApplication -> riid:REFIID, ppv:**void + "GetApplication": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(6, "GetApplication"), + # GetClassContext -> clsctxFilter:CLSCTX, pclsctx:*CLSCTX + "GetClassContext": ctypes.WINFUNCTYPE(HRESULT, CLSCTX, POINTER(CLSCTX))(7, "GetClassContext"), + # GetCustomActivatorCount -> activationStage:ACTIVATION_STAGE, pulCount:*ULONG + "GetCustomActivatorCount": ctypes.WINFUNCTYPE(HRESULT, ACTIVATION_STAGE, POINTER(ULONG))(8, "GetCustomActivatorCount"), + # GetCustomActivatorClsids -> activationStage:ACTIVATION_STAGE, prgguidClsid:**GUID + "GetCustomActivatorClsids": ctypes.WINFUNCTYPE(HRESULT, ACTIVATION_STAGE, POINTER(POINTER(GUID)))(9, "GetCustomActivatorClsids"), + # GetCustomActivators -> activationStage:ACTIVATION_STAGE, prgpActivator:***ISystemActivator + "GetCustomActivators": ctypes.WINFUNCTYPE(HRESULT, ACTIVATION_STAGE, POINTER(POINTER(ISystemActivator)))(10, "GetCustomActivators"), + # GetTypeInfo -> riid:REFIID, ppv:**void + "GetTypeInfo": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(11, "GetTypeInfo"), + # IsComPlusConfiguredClass -> pfComPlusConfiguredClass:*BOOL + "IsComPlusConfiguredClass": ctypes.WINFUNCTYPE(HRESULT, POINTER(BOOL))(12, "IsComPlusConfiguredClass"), + # MustRunInClientContext -> pbMustRunInClientContext:*BOOL + "MustRunInClientContext": ctypes.WINFUNCTYPE(HRESULT, POINTER(BOOL))(13, "MustRunInClientContext"), + # GetVersionNumber -> pdwVersionMS:*DWORD, pdwVersionLS:*DWORD + "GetVersionNumber": ctypes.WINFUNCTYPE(HRESULT, POINTER(DWORD), POINTER(DWORD))(14, "GetVersionNumber"), + # Lock -> + "Lock": ctypes.WINFUNCTYPE(HRESULT)(15, "Lock"), + # Unlock -> + "Unlock": ctypes.WINFUNCTYPE(HRESULT)(16, "Unlock"), + } + +IContext._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # SetProperty -> rpolicyId:REFGUID, flags:CPFLAGS, pUnk:*IUnknown + "SetProperty": ctypes.WINFUNCTYPE(HRESULT, REFGUID, CPFLAGS, IUnknown)(3, "SetProperty"), + # RemoveProperty -> rPolicyId:REFGUID + "RemoveProperty": ctypes.WINFUNCTYPE(HRESULT, REFGUID)(4, "RemoveProperty"), + # GetProperty -> rGuid:REFGUID, pFlags:*CPFLAGS, ppUnk:**IUnknown + "GetProperty": ctypes.WINFUNCTYPE(HRESULT, REFGUID, POINTER(CPFLAGS), POINTER(IUnknown))(5, "GetProperty"), + # EnumContextProps -> ppEnumContextProps:**IEnumContextProps + "EnumContextProps": ctypes.WINFUNCTYPE(HRESULT, POINTER(IEnumContextProps))(6, "EnumContextProps"), + } + +IEnumContextProps._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # Next -> celt:ULONG, pContextProperties:*ContextProperty, pceltFetched:*ULONG + "Next": ctypes.WINFUNCTYPE(HRESULT, ULONG, POINTER(ContextProperty), POINTER(ULONG))(3, "Next"), + # Skip -> celt:ULONG + "Skip": ctypes.WINFUNCTYPE(HRESULT, ULONG)(4, "Skip"), + # Reset -> + "Reset": ctypes.WINFUNCTYPE(HRESULT)(5, "Reset"), + # Clone -> ppEnumContextProps:**IEnumContextProps + "Clone": ctypes.WINFUNCTYPE(HRESULT, POINTER(IEnumContextProps))(6, "Clone"), + # Count -> pcelt:*ULONG + "Count": ctypes.WINFUNCTYPE(HRESULT, POINTER(ULONG))(7, "Count"), + } + +IEnumSTATSTG._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # Next -> celt:ULONG, rgelt:*STATSTG, pceltFetched:*ULONG + "Next": ctypes.WINFUNCTYPE(HRESULT, ULONG, POINTER(STATSTG), POINTER(ULONG))(3, "Next"), + # Skip -> celt:ULONG + "Skip": ctypes.WINFUNCTYPE(HRESULT, ULONG)(4, "Skip"), + # Reset -> + "Reset": ctypes.WINFUNCTYPE(HRESULT)(5, "Reset"), + # Clone -> ppenum:**IEnumSTATSTG + "Clone": ctypes.WINFUNCTYPE(HRESULT, POINTER(IEnumSTATSTG))(6, "Clone"), + } + +IInitActivationPropertiesIn._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # SetClsctx -> clsctx:DWORD + "SetClsctx": ctypes.WINFUNCTYPE(HRESULT, DWORD)(3, "SetClsctx"), + # SetActivationFlags -> actvflags:DWORD + "SetActivationFlags": ctypes.WINFUNCTYPE(HRESULT, DWORD)(4, "SetActivationFlags"), + # SetClassInfo -> pUnkClassInfo:*IUnknown + "SetClassInfo": ctypes.WINFUNCTYPE(HRESULT, IUnknown)(5, "SetClassInfo"), + # SetContextInfo -> pClientContext:*IContext, pPrototypeContext:*IContext + "SetContextInfo": ctypes.WINFUNCTYPE(HRESULT, IContext, IContext)(6, "SetContextInfo"), + # SetConstructFromStorage -> pStorage:*IStorage + "SetConstructFromStorage": ctypes.WINFUNCTYPE(HRESULT, IStorage)(7, "SetConstructFromStorage"), + # SetConstructFromFile -> wszFileName:*WCHAR, dwMode:DWORD + "SetConstructFromFile": ctypes.WINFUNCTYPE(HRESULT, POINTER(WCHAR), DWORD)(8, "SetConstructFromFile"), + } + +IOpaqueDataInfo._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # AddOpaqueData -> pData:*OpaqueData + "AddOpaqueData": ctypes.WINFUNCTYPE(HRESULT, POINTER(OpaqueData))(3, "AddOpaqueData"), + # GetOpaqueData -> guid:REFGUID, pData:**OpaqueData + "GetOpaqueData": ctypes.WINFUNCTYPE(HRESULT, REFGUID, POINTER(POINTER(OpaqueData)))(4, "GetOpaqueData"), + # DeleteOpaqueData -> guid:REFGUID + "DeleteOpaqueData": ctypes.WINFUNCTYPE(HRESULT, REFGUID)(5, "DeleteOpaqueData"), + # GetOpaqueDataCount -> pulCount:*ULONG + "GetOpaqueDataCount": ctypes.WINFUNCTYPE(HRESULT, POINTER(ULONG))(6, "GetOpaqueDataCount"), + # GetAllOpaqueData -> prgData:**OpaqueData + "GetAllOpaqueData": ctypes.WINFUNCTYPE(HRESULT, POINTER(POINTER(OpaqueData)))(7, "GetAllOpaqueData"), + } + +IPrivActivationPropertiesIn._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # GetActivationID -> pActivationID:*GUID + "GetActivationID": ctypes.WINFUNCTYPE(HRESULT, POINTER(GUID))(3, "GetActivationID"), + # GetClassInfo -> riid:REFIID, ppv:**void + "GetClassInfo": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(4, "GetClassInfo"), + # GetClsctx -> pclsctx:*DWORD + "GetClsctx": ctypes.WINFUNCTYPE(HRESULT, POINTER(DWORD))(5, "GetClsctx"), + # GetActivationFlags -> pactvflags:*DWORD + "GetActivationFlags": ctypes.WINFUNCTYPE(HRESULT, POINTER(DWORD))(6, "GetActivationFlags"), + # AddRequestedIIDs -> cIfs:DWORD, rgIID:*IID + "AddRequestedIIDs": ctypes.WINFUNCTYPE(HRESULT, DWORD, POINTER(IID))(7, "AddRequestedIIDs"), + # GetRequestedIIDs -> pulCount:*ULONG, prgIID:**IID + "GetRequestedIIDs": ctypes.WINFUNCTYPE(HRESULT, POINTER(ULONG), POINTER(POINTER(IID)))(8, "GetRequestedIIDs"), + # DelegateGetClassObject -> pActPropsOut:**IActivationPropertiesOut + "DelegateGetClassObject": ctypes.WINFUNCTYPE(HRESULT, POINTER(IActivationPropertiesOut))(9, "DelegateGetClassObject"), + # DelegateCreateInstance -> pUnkOuter:*IUnknown, pActPropsOut:**IActivationPropertiesOut + "DelegateCreateInstance": ctypes.WINFUNCTYPE(HRESULT, IUnknown, POINTER(IActivationPropertiesOut))(10, "DelegateCreateInstance"), + # DelegateCIAndGetCF -> pUnkOuter:*IUnknown, pActPropsOut:**IActivationPropertiesOut, ppCf:**IClassFactory + "DelegateCIAndGetCF": ctypes.WINFUNCTYPE(HRESULT, IUnknown, POINTER(IActivationPropertiesOut), POINTER(IClassFactory))(11, "DelegateCIAndGetCF"), + # GetReturnActivationProperties -> pUnk:*IUnknown, ppActOut:**IActivationPropertiesOut + "GetReturnActivationProperties": ctypes.WINFUNCTYPE(HRESULT, IUnknown, POINTER(IActivationPropertiesOut))(12, "GetReturnActivationProperties"), + # PrivGetReturnActivationProperties -> ppActOut:**IPrivActivationPropertiesOut + "PrivGetReturnActivationProperties": ctypes.WINFUNCTYPE(HRESULT, POINTER(IPrivActivationPropertiesOut))(13, "PrivGetReturnActivationProperties"), + # GetCOMVersion -> pVersion:*COMVERSION + "GetCOMVersion": ctypes.WINFUNCTYPE(HRESULT, POINTER(COMVERSION))(14, "GetCOMVersion"), + # GetClsid -> pClsid:*CLSID + "GetClsid": ctypes.WINFUNCTYPE(HRESULT, POINTER(CLSID))(15, "GetClsid"), + # GetClientToken -> pHandle:*HANDLE + "GetClientToken": ctypes.WINFUNCTYPE(HRESULT, POINTER(HANDLE))(16, "GetClientToken"), + # GetDestCtx -> pdwDestCtx:*DWORD + "GetDestCtx": ctypes.WINFUNCTYPE(HRESULT, POINTER(DWORD))(17, "GetDestCtx"), + } + +IPrivActivationPropertiesOut._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # GetActivationID -> pActivationID:*GUID + "GetActivationID": ctypes.WINFUNCTYPE(HRESULT, POINTER(GUID))(3, "GetActivationID"), + # GetObjectInterface -> riid:REFIID, actvflags:DWORD, ppv:**void + "GetObjectInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, DWORD, POINTER(PVOID))(4, "GetObjectInterface"), + # GetObjectInterfaces -> cIfs:DWORD, actvflags:DWORD, multiQi:*MULTI_QI + "GetObjectInterfaces": ctypes.WINFUNCTYPE(HRESULT, DWORD, DWORD, POINTER(MULTI_QI))(5, "GetObjectInterfaces"), + # RemoveRequestedIIDs -> cIfs:DWORD, rgIID:*IID + "RemoveRequestedIIDs": ctypes.WINFUNCTYPE(HRESULT, DWORD, POINTER(IID))(6, "RemoveRequestedIIDs"), + # SetObjectInterfaces -> cIfs:DWORD, pIID:*IID, pUnk:*IUnknown + "SetObjectInterfaces": ctypes.WINFUNCTYPE(HRESULT, DWORD, POINTER(IID), IUnknown)(7, "SetObjectInterfaces"), + # SetMarshalledResults -> cIfs:DWORD, pIID:*IID, pHr:*HRESULT, pIntfData:**MInterfacePointer + "SetMarshalledResults": ctypes.WINFUNCTYPE(HRESULT, DWORD, POINTER(IID), POINTER(HRESULT), POINTER(POINTER(MInterfacePointer)))(8, "SetMarshalledResults"), + # GetMarshalledResults -> pcIfs:*DWORD, pIID:**IID, pHr:**HRESULT, pIntfData:***MInterfacePointer + "GetMarshalledResults": ctypes.WINFUNCTYPE(HRESULT, POINTER(DWORD), POINTER(POINTER(IID)), POINTER(POINTER(HRESULT)), POINTER(POINTER(POINTER(MInterfacePointer))))(9, "GetMarshalledResults"), + } + +IScmReplyInfo._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # SetResolverInfo -> pResolverInfo:*PRIV_RESOLVER_INFO + "SetResolverInfo": ctypes.WINFUNCTYPE(HRESULT, POINTER(PRIV_RESOLVER_INFO))(3, "SetResolverInfo"), + # GetResolverInfo -> ppResolverInfo:**PRIV_RESOLVER_INFO + "GetResolverInfo": ctypes.WINFUNCTYPE(HRESULT, POINTER(POINTER(PRIV_RESOLVER_INFO)))(4, "GetResolverInfo"), + # SetRemoteReplyInfo -> pRemoteReply:*REMOTE_REPLY_SCM_INFO + "SetRemoteReplyInfo": ctypes.WINFUNCTYPE(HRESULT, POINTER(REMOTE_REPLY_SCM_INFO))(5, "SetRemoteReplyInfo"), + # GetRemoteReplyInfo -> ppRemoteReply:**REMOTE_REPLY_SCM_INFO + "GetRemoteReplyInfo": ctypes.WINFUNCTYPE(HRESULT, POINTER(POINTER(REMOTE_REPLY_SCM_INFO)))(6, "GetRemoteReplyInfo"), + } + +IScmRequestInfo._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # SetScmInfo -> pScmInfo:*PRIV_SCM_INFO + "SetScmInfo": ctypes.WINFUNCTYPE(HRESULT, POINTER(PRIV_SCM_INFO))(3, "SetScmInfo"), + # GetScmInfo -> ppScmInfo:**PRIV_SCM_INFO + "GetScmInfo": ctypes.WINFUNCTYPE(HRESULT, POINTER(POINTER(PRIV_SCM_INFO)))(4, "GetScmInfo"), + # SetRemoteRequestInfo -> pRemoteReq:*REMOTE_REQUEST_SCM_INFO + "SetRemoteRequestInfo": ctypes.WINFUNCTYPE(HRESULT, POINTER(REMOTE_REQUEST_SCM_INFO))(5, "SetRemoteRequestInfo"), + # GetRemoteRequestInfo -> ppRemoteReq:**REMOTE_REQUEST_SCM_INFO + "GetRemoteRequestInfo": ctypes.WINFUNCTYPE(HRESULT, POINTER(POINTER(REMOTE_REQUEST_SCM_INFO)))(6, "GetRemoteRequestInfo"), + } + +IStandardActivator._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # StandardGetClassObject -> rclsid:REFCLSID, dwClsCtx:DWORD, pServerInfo:*COSERVERINFO, riid:REFIID, ppv:**void + "StandardGetClassObject": ctypes.WINFUNCTYPE(HRESULT, REFCLSID, DWORD, POINTER(COSERVERINFO), REFIID, POINTER(PVOID))(3, "StandardGetClassObject"), + # StandardCreateInstance -> Clsid:REFCLSID, punkOuter:*IUnknown, dwClsCtx:DWORD, pServerInfo:*COSERVERINFO, dwCount:DWORD, pResults:*MULTI_QI + "StandardCreateInstance": ctypes.WINFUNCTYPE(HRESULT, REFCLSID, IUnknown, DWORD, POINTER(COSERVERINFO), DWORD, POINTER(MULTI_QI))(4, "StandardCreateInstance"), + # StandardGetInstanceFromFile -> pServerInfo:*COSERVERINFO, pclsidOverride:*CLSID, punkOuter:*IUnknown, dwClsCtx:DWORD, grfMode:DWORD, pwszName:*OLECHAR, dwCount:DWORD, pResults:*MULTI_QI + "StandardGetInstanceFromFile": ctypes.WINFUNCTYPE(HRESULT, POINTER(COSERVERINFO), POINTER(CLSID), IUnknown, DWORD, DWORD, POINTER(OLECHAR), DWORD, POINTER(MULTI_QI))(5, "StandardGetInstanceFromFile"), + # StandardGetInstanceFromIStorage -> pServerInfo:*COSERVERINFO, pclsidOverride:*CLSID, punkOuter:*IUnknown, dwClsCtx:DWORD, pstg:*IStorage, dwCount:DWORD, pResults:*MULTI_QI + "StandardGetInstanceFromIStorage": ctypes.WINFUNCTYPE(HRESULT, POINTER(COSERVERINFO), POINTER(CLSID), IUnknown, DWORD, IStorage, DWORD, POINTER(MULTI_QI))(6, "StandardGetInstanceFromIStorage"), + # Reset -> + "Reset": ctypes.WINFUNCTYPE(HRESULT)(7, "Reset"), + } + +ISystemActivator._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # GetClassObject -> pActProperties:*IActivationPropertiesIn, ppActProperties:**IActivationPropertiesOut + "GetClassObject": ctypes.WINFUNCTYPE(HRESULT, IActivationPropertiesIn, POINTER(IActivationPropertiesOut))(3, "GetClassObject"), + # CreateInstance -> pUnkOuter:*IUnknown, pActProperties:*IActivationPropertiesIn, ppActProperties:**IActivationPropertiesOut + "CreateInstance": ctypes.WINFUNCTYPE(HRESULT, IUnknown, IActivationPropertiesIn, POINTER(IActivationPropertiesOut))(4, "CreateInstance"), + } + IBindCtx._functions_ = { # QueryInterface -> riid:REFIID, ppvObject:**void "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), @@ -1263,55 +2055,6 @@ class IWbemServices(COMInterface): "EnumSubCommands": ctypes.WINFUNCTYPE(HRESULT, POINTER(IEnumExplorerCommand))(10, "EnumSubCommands"), } -IMoniker._functions_ = { - # QueryInterface -> riid:REFIID, ppvObject:**void - "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), - # AddRef -> - "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), - # Release -> - "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), - # GetClassID -> pClassID:*CLSID - "GetClassID": ctypes.WINFUNCTYPE(HRESULT, POINTER(CLSID))(3, "GetClassID"), - # IsDirty -> - "IsDirty": ctypes.WINFUNCTYPE(HRESULT)(4, "IsDirty"), - # Load -> pStm:*IStream - "Load": ctypes.WINFUNCTYPE(HRESULT, IStream)(5, "Load"), - # Save -> pStm:*IStream, fClearDirty:BOOL - "Save": ctypes.WINFUNCTYPE(HRESULT, IStream, BOOL)(6, "Save"), - # GetSizeMax -> pcbSize:*ULARGE_INTEGER - "GetSizeMax": ctypes.WINFUNCTYPE(HRESULT, POINTER(ULARGE_INTEGER))(7, "GetSizeMax"), - # BindToObject -> pbc:*IBindCtx, pmkToLeft:*IMoniker, riidResult:REFIID, ppvResult:**void - "BindToObject": ctypes.WINFUNCTYPE(HRESULT, IBindCtx, IMoniker, REFIID, POINTER(PVOID))(8, "BindToObject"), - # BindToStorage -> pbc:*IBindCtx, pmkToLeft:*IMoniker, riid:REFIID, ppvObj:**void - "BindToStorage": ctypes.WINFUNCTYPE(HRESULT, IBindCtx, IMoniker, REFIID, POINTER(PVOID))(9, "BindToStorage"), - # Reduce -> pbc:*IBindCtx, dwReduceHowFar:DWORD, ppmkToLeft:**IMoniker, ppmkReduced:**IMoniker - "Reduce": ctypes.WINFUNCTYPE(HRESULT, IBindCtx, DWORD, POINTER(IMoniker), POINTER(IMoniker))(10, "Reduce"), - # ComposeWith -> pmkRight:*IMoniker, fOnlyIfNotGeneric:BOOL, ppmkComposite:**IMoniker - "ComposeWith": ctypes.WINFUNCTYPE(HRESULT, IMoniker, BOOL, POINTER(IMoniker))(11, "ComposeWith"), - # Enum -> fForward:BOOL, ppenumMoniker:**IEnumMoniker - "Enum": ctypes.WINFUNCTYPE(HRESULT, BOOL, POINTER(IEnumMoniker))(12, "Enum"), - # IsEqual -> pmkOtherMoniker:*IMoniker - "IsEqual": ctypes.WINFUNCTYPE(HRESULT, IMoniker)(13, "IsEqual"), - # Hash -> pdwHash:*DWORD - "Hash": ctypes.WINFUNCTYPE(HRESULT, POINTER(DWORD))(14, "Hash"), - # IsRunning -> pbc:*IBindCtx, pmkToLeft:*IMoniker, pmkNewlyRunning:*IMoniker - "IsRunning": ctypes.WINFUNCTYPE(HRESULT, IBindCtx, IMoniker, IMoniker)(15, "IsRunning"), - # GetTimeOfLastChange -> pbc:*IBindCtx, pmkToLeft:*IMoniker, pFileTime:*FILETIME - "GetTimeOfLastChange": ctypes.WINFUNCTYPE(HRESULT, IBindCtx, IMoniker, POINTER(FILETIME))(16, "GetTimeOfLastChange"), - # Inverse -> ppmk:**IMoniker - "Inverse": ctypes.WINFUNCTYPE(HRESULT, POINTER(IMoniker))(17, "Inverse"), - # CommonPrefixWith -> pmkOther:*IMoniker, ppmkPrefix:**IMoniker - "CommonPrefixWith": ctypes.WINFUNCTYPE(HRESULT, IMoniker, POINTER(IMoniker))(18, "CommonPrefixWith"), - # RelativePathTo -> pmkOther:*IMoniker, ppmkRelPath:**IMoniker - "RelativePathTo": ctypes.WINFUNCTYPE(HRESULT, IMoniker, POINTER(IMoniker))(19, "RelativePathTo"), - # GetDisplayName -> pbc:*IBindCtx, pmkToLeft:*IMoniker, ppszDisplayName:*LPOLESTR - "GetDisplayName": ctypes.WINFUNCTYPE(HRESULT, IBindCtx, IMoniker, POINTER(LPOLESTR))(20, "GetDisplayName"), - # ParseDisplayName -> pbc:*IBindCtx, pmkToLeft:*IMoniker, pszDisplayName:LPOLESTR, pchEaten:*ULONG, ppmkOut:**IMoniker - "ParseDisplayName": ctypes.WINFUNCTYPE(HRESULT, IBindCtx, IMoniker, LPOLESTR, POINTER(ULONG), POINTER(IMoniker))(21, "ParseDisplayName"), - # IsSystemMoniker -> pdwMksys:*DWORD - "IsSystemMoniker": ctypes.WINFUNCTYPE(HRESULT, POINTER(DWORD))(22, "IsSystemMoniker"), - } - IRunningObjectTable._functions_ = { # QueryInterface -> riid:REFIID, ppvObject:**void "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), @@ -1377,35 +2120,46 @@ class IWbemServices(COMInterface): "EnumItems": ctypes.WINFUNCTYPE(HRESULT, POINTER(IEnumShellItems))(9, "EnumItems"), } -IStream._functions_ = { +IProxyManager._functions_ = { # QueryInterface -> riid:REFIID, ppvObject:**void "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), # AddRef -> "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), # Release -> "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), - # Read -> pv:*void, cb:ULONG, pcbRead:*ULONG - "Read": ctypes.WINFUNCTYPE(HRESULT, PVOID, ULONG, POINTER(ULONG))(3, "Read"), - # Write -> pv:*void, cb:ULONG, pcbWritten:*ULONG - "Write": ctypes.WINFUNCTYPE(HRESULT, PVOID, ULONG, POINTER(ULONG))(4, "Write"), - # Seek -> dlibMove:LARGE_INTEGER, dwOrigin:DWORD, plibNewPosition:*ULARGE_INTEGER - "Seek": ctypes.WINFUNCTYPE(HRESULT, LARGE_INTEGER, DWORD, POINTER(ULARGE_INTEGER))(5, "Seek"), - # SetSize -> libNewSize:ULARGE_INTEGER - "SetSize": ctypes.WINFUNCTYPE(HRESULT, ULARGE_INTEGER)(6, "SetSize"), - # CopyTo -> pstm:*IStream, cb:ULARGE_INTEGER, pcbRead:*ULARGE_INTEGER, pcbWritten:*ULARGE_INTEGER - "CopyTo": ctypes.WINFUNCTYPE(HRESULT, IStream, ULARGE_INTEGER, POINTER(ULARGE_INTEGER), POINTER(ULARGE_INTEGER))(7, "CopyTo"), - # Commit -> grfCommitFlags:DWORD - "Commit": ctypes.WINFUNCTYPE(HRESULT, DWORD)(8, "Commit"), - # Revert -> - "Revert": ctypes.WINFUNCTYPE(HRESULT)(9, "Revert"), - # LockRegion -> libOffset:ULARGE_INTEGER, cb:ULARGE_INTEGER, dwLockType:DWORD - "LockRegion": ctypes.WINFUNCTYPE(HRESULT, ULARGE_INTEGER, ULARGE_INTEGER, DWORD)(10, "LockRegion"), - # UnlockRegion -> libOffset:ULARGE_INTEGER, cb:ULARGE_INTEGER, dwLockType:DWORD - "UnlockRegion": ctypes.WINFUNCTYPE(HRESULT, ULARGE_INTEGER, ULARGE_INTEGER, DWORD)(11, "UnlockRegion"), - # Stat -> pstatstg:*STATSTG, grfStatFlag:DWORD - "Stat": ctypes.WINFUNCTYPE(HRESULT, POINTER(STATSTG), DWORD)(12, "Stat"), - # Clone -> ppstm:**IStream - "Clone": ctypes.WINFUNCTYPE(HRESULT, POINTER(IStream))(13, "Clone"), + # CreateServer -> rclsid:*REFCLSID, clsctx:*DWORD, pv:*PVOID + "CreateServer": ctypes.WINFUNCTYPE(HRESULT, POINTER(REFCLSID), POINTER(DWORD), POINTER(PVOID))(3, "CreateServer"), + # IsConnected -> + "IsConnected": ctypes.WINFUNCTYPE(BOOL)(4, "IsConnected"), + # LockConnection -> fLock:BOOL, fLastUnlockReleases:BOOL + "LockConnection": ctypes.WINFUNCTYPE(HRESULT, BOOL, BOOL)(5, "LockConnection"), + # Disconnect -> + "Disconnect": ctypes.WINFUNCTYPE(HRESULT)(6, "Disconnect"), + # GetConnectionStatus -> + "GetConnectionStatus": ctypes.WINFUNCTYPE(HRESULT)(7, "GetConnectionStatus"), + # ScalarDeletingDestructor -> + "ScalarDeletingDestructor": ctypes.WINFUNCTYPE(HRESULT)(8, "ScalarDeletingDestructor"), + # SetMapping -> + "SetMapping": ctypes.WINFUNCTYPE(HRESULT)(9, "SetMapping"), + # GetMapping -> + "GetMapping": ctypes.WINFUNCTYPE(HRESULT)(10, "GetMapping"), + # GetServerObjectContext -> + "GetServerObjectContext": ctypes.WINFUNCTYPE(IObjContext)(11, "GetServerObjectContext"), + # GetWrapperForContex -> pCtx:*IObjContext, riid:*IID, ppv:**void + "GetWrapperForContex": ctypes.WINFUNCTYPE(HRESULT, IObjContext, POINTER(IID), POINTER(PVOID))(12, "GetWrapperForContex"), + } + +IProxyServerIdentity._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # GetServerProcessId -> processId:*UINT + "GetServerProcessId": ctypes.WINFUNCTYPE(HRESULT, POINTER(UINT))(3, "GetServerProcessId"), + # GetServerProcessHandle -> dwDesiredAccess:DWORD, bInheritHandle:INT, phProcess:*PVOID + "GetServerProcessHandle": ctypes.WINFUNCTYPE(HRESULT, DWORD, INT, POINTER(PVOID))(4, "GetServerProcessHandle"), } IApplicationActivationManager._functions_ = { @@ -1473,6 +2227,95 @@ class IWbemServices(COMInterface): "OnStateChanged": ctypes.WINFUNCTYPE(HRESULT, LPCWSTR, PACKAGE_EXECUTION_STATE)(3, "OnStateChanged"), } +IChannelHook._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # ClientGetSize -> uExtent:REFGUID, riid:REFIID, pDataSize:*ULONG + "ClientGetSize": ctypes.WINFUNCTYPE(PVOID, REFGUID, REFIID, POINTER(ULONG))(3, "ClientGetSize"), + # ClientFillBuffer -> uExtent:REFGUID, riid:REFIID, pDataSize:*ULONG, pDataBuffer:*void + "ClientFillBuffer": ctypes.WINFUNCTYPE(PVOID, REFGUID, REFIID, POINTER(ULONG), PVOID)(4, "ClientFillBuffer"), + # ClientNotify -> uExtent:REFGUID, riid:REFIID, cbDataSize:ULONG, pDataBuffer:*void, lDataRep:DWORD, hrFault:HRESULT + "ClientNotify": ctypes.WINFUNCTYPE(PVOID, REFGUID, REFIID, ULONG, PVOID, DWORD, HRESULT)(5, "ClientNotify"), + # ServerNotify -> uExtent:REFGUID, riid:REFIID, cbDataSize:ULONG, pDataBuffer:*void, lDataRep:DWORD + "ServerNotify": ctypes.WINFUNCTYPE(PVOID, REFGUID, REFIID, ULONG, PVOID, DWORD)(6, "ServerNotify"), + # ServerGetSize -> uExtent:REFGUID, riid:REFIID, hrFault:HRESULT, pDataSize:*ULONG + "ServerGetSize": ctypes.WINFUNCTYPE(PVOID, REFGUID, REFIID, HRESULT, POINTER(ULONG))(7, "ServerGetSize"), + # ServerFillBuffer -> uExtent:REFGUID, riid:REFIID, pDataSize:*ULONG, pDataBuffer:*void, hrFault:HRESULT + "ServerFillBuffer": ctypes.WINFUNCTYPE(PVOID, REFGUID, REFIID, POINTER(ULONG), PVOID, HRESULT)(8, "ServerFillBuffer"), + } + +IRpcChannelBuffer._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # GetBuffer -> pMessage:*RPCOLEMESSAGE, riid:REFIID + "GetBuffer": ctypes.WINFUNCTYPE(HRESULT, POINTER(RPCOLEMESSAGE), REFIID)(3, "GetBuffer"), + # SendReceive -> pMessage:*RPCOLEMESSAGE, pStatus:*ULONG + "SendReceive": ctypes.WINFUNCTYPE(HRESULT, POINTER(RPCOLEMESSAGE), POINTER(ULONG))(4, "SendReceive"), + # FreeBuffer -> pMessage:*RPCOLEMESSAGE + "FreeBuffer": ctypes.WINFUNCTYPE(HRESULT, POINTER(RPCOLEMESSAGE))(5, "FreeBuffer"), + # GetDestCtx -> pdwDestContext:*DWORD, ppvDestContext:**void + "GetDestCtx": ctypes.WINFUNCTYPE(HRESULT, POINTER(DWORD), POINTER(PVOID))(6, "GetDestCtx"), + # IsConnected -> + "IsConnected": ctypes.WINFUNCTYPE(HRESULT)(7, "IsConnected"), + } + +IRpcHelper._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # GetDCOMProtocolVersion -> pComVersion:*DWORD + "GetDCOMProtocolVersion": ctypes.WINFUNCTYPE(HRESULT, POINTER(DWORD))(3, "GetDCOMProtocolVersion"), + # GetIIDFromOBJREF -> pObjRef:*void, piid:**IID + "GetIIDFromOBJREF": ctypes.WINFUNCTYPE(HRESULT, PVOID, POINTER(POINTER(IID)))(4, "GetIIDFromOBJREF"), + } + +IRpcOptions._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:**void + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # Set -> pPrx:*IUnknown, dwProperty:DWORD, dwValue:ULONG_PTR + "Set": ctypes.WINFUNCTYPE(HRESULT, IUnknown, DWORD, ULONG_PTR)(3, "Set"), + # Query -> pPrx:*IUnknown, dwProperty:DWORD, pdwValue:*ULONG_PTR + "Query": ctypes.WINFUNCTYPE(HRESULT, IUnknown, DWORD, POINTER(ULONG_PTR))(4, "Query"), + } + +IRpcStubBuffer._functions_ = { + # QueryInterface -> riid:REFIID, ppvObject:*PVOID + "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), + # AddRef -> + "AddRef": ctypes.WINFUNCTYPE(ULONG)(1, "AddRef"), + # Release -> + "Release": ctypes.WINFUNCTYPE(ULONG)(2, "Release"), + # Connect -> pUnkServer:*IUnknown + "Connect": ctypes.WINFUNCTYPE(HRESULT, IUnknown)(3, "Connect"), + # Disconnect -> + "Disconnect": ctypes.WINFUNCTYPE(PVOID)(4, "Disconnect"), + # Invoke -> _prpcmsg:*RPCOLEMESSAGE, _pRpcChannelBuffer:*IRpcChannelBuffer + "Invoke": ctypes.WINFUNCTYPE(HRESULT, POINTER(RPCOLEMESSAGE), IRpcChannelBuffer)(5, "Invoke"), + # IsIIDSupported -> riid:REFIID + "IsIIDSupported": ctypes.WINFUNCTYPE(PVOID, REFIID)(6, "IsIIDSupported"), + # CountRefs -> + "CountRefs": ctypes.WINFUNCTYPE(ULONG)(7, "CountRefs"), + # DebugServerQueryInterface -> ppv:*PVOID + "DebugServerQueryInterface": ctypes.WINFUNCTYPE(HRESULT, POINTER(PVOID))(8, "DebugServerQueryInterface"), + # DebugServerRelease -> pv:PVOID + "DebugServerRelease": ctypes.WINFUNCTYPE(PVOID, PVOID)(9, "DebugServerRelease"), + } + IAction._functions_ = { # QueryInterface -> riid:REFIID, ppvObject:**void "QueryInterface": ctypes.WINFUNCTYPE(HRESULT, REFIID, POINTER(PVOID))(0, "QueryInterface"), diff --git a/windows/generated_def/meta.py b/windows/generated_def/meta.py index e0372222..0a22507f 100644 --- a/windows/generated_def/meta.py +++ b/windows/generated_def/meta.py @@ -651,11 +651,11 @@ 'COMPRESSION_FORMAT_NONE', 'COMPRESSION_FORMAT_XPRESS', 'COMPRESSION_FORMAT_XPRESS_HUFF', -'COM_ACTIVATE_LOCAL', -'COM_ACTIVATE_REMOTE', -'COM_EXECUTE', -'COM_EXECUTE_LOCAL', -'COM_EXECUTE_REMOTE', +'COM_RIGHTS_ACTIVATE_LOCAL', +'COM_RIGHTS_ACTIVATE_REMOTE', +'COM_RIGHTS_EXECUTE', +'COM_RIGHTS_EXECUTE_LOCAL', +'COM_RIGHTS_EXECUTE_REMOTE', 'CONTAINER_INHERIT_ACE', 'CONTEXT_ALL', 'CONTEXT_AMD64', @@ -2288,6 +2288,11 @@ 'OBJECT_INHERIT_ACE', 'OBJECT_TYPE_ALL_ACCESS', 'OBJECT_TYPE_CREATE', +'OBJREF_CUSTOM', +'OBJREF_EXTENDED', +'OBJREF_HANDLER', +'OBJREF_SIGNATURE', +'OBJREF_STANDARD', 'OBJ_CASE_INSENSITIVE', 'OBJ_EXCLUSIVE', 'OBJ_FORCE_ACCESS_CHECK', @@ -2299,6 +2304,17 @@ 'OBJ_VALID_ATTRIBUTES', 'OPEN_ALWAYS', 'OPEN_EXISTING', +'ORPCF_ASYNC', +'ORPCF_DYNAMIC_CLOAKING', +'ORPCF_INPUT_SYNC', +'ORPCF_LOCAL', +'ORPCF_NULL', +'ORPCF_REJECTED', +'ORPCF_RESERVED1', +'ORPCF_RESERVED2', +'ORPCF_RESERVED3', +'ORPCF_RESERVED4', +'ORPCF_RETRY_LATER', 'OS_ADVSERVER', 'OS_ANYSERVER', 'OS_APPLIANCE', @@ -2904,6 +2920,16 @@ 'SOCK_RDM', 'SOCK_SEQPACKET', 'SOCK_STREAM', +'SORF_NOPING', +'SORF_NULL', +'SORF_OXRES1', +'SORF_OXRES2', +'SORF_OXRES3', +'SORF_OXRES4', +'SORF_OXRES5', +'SORF_OXRES6', +'SORF_OXRES7', +'SORF_OXRES8', 'SPC_CAB_DATA_OBJID', 'SPC_CERT_EXTENSIONS_OBJID', 'SPC_COMMERCIAL_SP_KEY_PURPOSE_OBJID', @@ -12190,6 +12216,7 @@ 'CERT_TRUST_LIST_INFO', 'CERT_TRUST_STATUS', 'CERT_USAGE_MATCH', +'CID', 'CLAIM_SECURITY_ATTRIBUTES_INFORMATION', 'CLAIM_SECURITY_ATTRIBUTES_INFORMATION_UNION', 'CLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE', @@ -12215,6 +12242,10 @@ 'COAUTHIDENTITY', 'COAUTHINFO', 'COMVERSION', +'CONTAINERTHAT', +'CONTAINERVERSION', +'CONTAINER_EXTENT', +'CONTAINER_EXTENT_ARRAY', 'CONTEXT32', 'CONTEXT64', 'COSERVERINFO', @@ -12260,6 +12291,8 @@ 'CTL_INFO', 'CTL_USAGE', 'CURDIR', +'ContextProperty', +'DATAELEMENT', 'DATA_BLOB', 'DEBUG_BREAKPOINT_PARAMETERS', 'DEBUG_EVENT', @@ -12352,6 +12385,7 @@ 'DNS_WINSR_DATAW', 'DNS_WINS_DATA', 'DNS_WKS_DATA', +'DUALSTRINGARRAY', 'ELEMDESC', 'ENABLE_TRACE_PARAMETERS', 'ENUM_SERVICE_STATUSA', @@ -12428,6 +12462,7 @@ 'GROUP_USERS_INFO_0', 'GROUP_USERS_INFO_1', 'GUID', +'HSTRING__', 'IDLDESC', 'IID', 'IMAGEHLP_CBA_EVENT', @@ -12469,6 +12504,7 @@ 'IO_Resource_s', 'IO_STATUS_BLOCK', 'IP6_ADDRESS', +'IPID', 'IP_ADAPTER_INDEX_MAP', 'IP_ADAPTER_INFO', 'IP_ADDRESS_STRING', @@ -12505,7 +12541,10 @@ 'LOCALGROUP_MEMBERS_INFO_1', 'LOCALGROUP_MEMBERS_INFO_2', 'LOCALGROUP_MEMBERS_INFO_3', +'LOCALTHAT', +'LOCALTHAT32', 'LOCALTHIS', +'LOCALTHIS32', 'LPADDRESS', 'LPADDRESS64', 'LPBINDPTR', @@ -12646,7 +12685,9 @@ 'MIB_UDP6TABLE_OWNER_PID', 'MIB_UDPROW_OWNER_PID', 'MIB_UDPTABLE_OWNER_PID', +'MIDL_ILocalObjectExporter_0007', 'MIDL_XmitDefs_0001', +'MInterfacePointer', 'MODLOAD_DATA', 'MULTI_QI', 'Mem_Des_s', @@ -12668,8 +12709,15 @@ 'OBJECT_ATTRIBUTES', 'OBJECT_DIRECTORY_INFORMATION', 'OBJECT_TYPES_INFORMATION', +'OBJREF', +'OBJREFDATA', 'OPEN_VIRTUAL_DISK_PARAMETERS', +'ORPCTHAT', +'ORPCTHAT32', 'ORPCTHIS', +'ORPCTHIS32', +'ORPC_EXTENT', +'ORPC_EXTENT_ARRAY', 'OSVERSIONINFOA', 'OSVERSIONINFOEXA', 'OSVERSIONINFOEXW', @@ -12677,6 +12725,8 @@ 'OUTPUT_DEBUG_STRING_INFO', 'OVERLAPPED', 'OVERLAPPED_ENTRY', +'OXID_INFO', +'OpaqueData', 'PACCESS_ALLOWED_ACE', 'PACCESS_ALLOWED_CALLBACK_ACE', 'PACCESS_ALLOWED_CALLBACK_OBJECT_ACE', @@ -12826,6 +12876,7 @@ 'PCTL_INFO', 'PCTL_USAGE', 'PCURDIR', +'PDATAELEMENT', 'PDATA_BLOB', 'PDEBUG_BREAKPOINT_PARAMETERS', 'PDEBUG_EXCEPTION_FILTER_PARAMETERS', @@ -13074,6 +13125,7 @@ 'PMIB_UDP6TABLE_OWNER_PID', 'PMIB_UDPROW_OWNER_PID', 'PMIB_UDPTABLE_OWNER_PID', +'PMInterfacePointer', 'PMODLOAD_DATA', 'PNET_DISPLAY_GROUP', 'PNET_DISPLAY_MACHINE', @@ -13088,6 +13140,7 @@ 'POLICY_LSA_SERVER_ROLE_INFO', 'POLICY_PRIMARY_DOMAIN_INFO', 'POPEN_VIRTUAL_DISK_PARAMETERS', +'PORPC_EXTENT', 'PORT_MESSAGE32', 'PORT_MESSAGE32_TMP_UNION', 'PORT_MESSAGE64', @@ -13108,6 +13161,8 @@ 'PPORT_MESSAGE64', 'PPORT_VIEW', 'PPRIVILEGE_SET', +'PPRIV_RESOLVER_INFO', +'PPRIV_RESOLVER_INFO_LEGACY', 'PPROCESSENTRY32', 'PPROCESSENTRY32W', 'PPROCESS_BASIC_INFORMATION', @@ -13139,8 +13194,13 @@ 'PPUBLIC_OBJECT_BASIC_INFORMATION', 'PPUBLIC_OBJECT_TYPE_INFORMATION', 'PREMOTE_PORT_VIEW', +'PREMOTE_REPLY_SCM_INFO', +'PREMQIRESULT', 'PRGBTRIPLE', 'PRIVILEGE_SET', +'PRIV_RESOLVER_INFO', +'PRIV_RESOLVER_INFO_LEGACY', +'PRIV_SCM_INFO', 'PRLIST_ENTRY', 'PROCESSENTRY32', 'PROCESSENTRY32W', @@ -13160,6 +13220,7 @@ 'PROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY', 'PROPERTYKEY', 'PROVIDER_ENUMERATION_INFO', +'PRPCOLEMESSAGE', 'PRTLP_CURDIR_REF', 'PRTL_DRIVE_LETTER_CURDIR', 'PRTL_OSVERSIONINFOEXW', @@ -13292,11 +13353,17 @@ 'REFCLSID', 'REFGUID', 'REFIID', +'REFIPID', 'REFPROPERTYKEY', +'REMINTERFACEREF', 'REMOTE_PORT_VIEW', +'REMOTE_REPLY_SCM_INFO', +'REMOTE_REQUEST_SCM_INFO', +'REMQIRESULT', 'RGBQUAD', 'RGBTRIPLE', 'RIP_INFO', +'RPCOLEMESSAGE', 'RPC_IF_ID', 'RTLP_CURDIR_REF', 'RTL_DRIVE_LETTER_CURDIR', @@ -13340,6 +13407,7 @@ 'STARTUPINFOEXW', 'STARTUPINFOW', 'STATSTG', +'STDOBJREF', 'STRING', 'STRUCT_PLAINTEXTKEYBLOB', 'SYMBOL_INFO', @@ -13388,7 +13456,6 @@ 'TMP_SPC_LINK_UNION', 'TMP_TYPEDESC_UNION', 'TMP_UNION_DEBUG_INFO', -'TMP_UNION_IO_STATUS_BLOCK', 'TMP_VARDESC_UNION', 'TMP_WINTRUST_UNION_TYPE', 'TMP_lowmid_union', @@ -13772,7 +13839,10 @@ '_LOCALGROUP_MEMBERS_INFO_1', '_LOCALGROUP_MEMBERS_INFO_2', '_LOCALGROUP_MEMBERS_INFO_3', +'_LOCALTHAT', +'_LOCALTHAT32', '_LOCALTHIS', +'_LOCALTHIS32', '_LSA_OBJECT_ATTRIBUTES', '_LSA_REFERENCED_DOMAIN_LIST', '_LSA_TRANSLATED_NAME', @@ -13802,6 +13872,12 @@ '_MIB_UDP6TABLE_OWNER_PID', '_MIB_UDPROW_OWNER_PID', '_MIB_UDPTABLE_OWNER_PID', +'_MIDL_ILocalObjectExporter_0007', +'_MIDL_XmitDefs_0001', +'_MIDL_XmitDefs_0005', +'_MIDL_XmitDefs_0007', +'_MIDL_XmitDefs_0008', +'_MIDL_XmitDefs_0010', '_MODLOAD_DATA', '_NET_DISPLAY_GROUP', '_NET_DISPLAY_MACHINE', @@ -13836,6 +13912,9 @@ '_PORT_MESSAGE_TMP_UNION_U2', '_PORT_VIEW', '_PRIVILEGE_SET', +'_PRIV_RESOLVER_INFO', +'_PRIV_RESOLVER_INFO_LEGACY', +'_PRIV_SCM_INFO', '_PROCESS_BASIC_INFORMATION', '_PROCESS_INFORMATION', '_PROCESS_INSTRUMENTATION_CALLBACK_INFORMATION', @@ -13868,6 +13947,8 @@ '_QUERY_SERVICE_CONFIGA', '_QUERY_SERVICE_CONFIGW', '_REMOTE_PORT_VIEW', +'_REMOTE_REPLY_SCM_INFO', +'_REMOTE_REQUEST_SCM_INFO', '_RIP_INFO', '_RPC_IF_ID', '_RTLP_CURDIR_REF', @@ -13942,7 +14023,6 @@ '_TMP_SPC_LINK_UNION', '_TMP_TYPEDESC_UNION', '_TMP_UNION_DEBUG_INFO', -'_TMP_UNION_IO_STATUS_BLOCK', '_TMP_VARDESC_UNION', '_TMP_WINTRUST_UNION_TYPE', '_TMP_lowmid', @@ -14002,7 +14082,6 @@ '_XSTATE_FEATURE', '__MIDL_IBackgroundCopyJob2_0003', '__MIDL_IBackgroundCopyJob2_0004', -'__MIDL_XmitDefs_0001', '__PUBLIC_OBJECT_TYPE_INFORMATION', '__tagBRECORD', '__tagVARIANT', @@ -14029,24 +14108,40 @@ 'tagBITMAPINFO', 'tagBITMAPINFOHEADER', 'tagCOMVERSION', +'tagContextProperty', +'tagDATAELEMENT', 'tagDEC', 'tagDISPPARAMS', +'tagDUALSTRINGARRAY', 'tagELEMDESC', 'tagEXCEPINFO', 'tagFUNCDESC', 'tagIDLDESC', +'tagMInterfacePointer', 'tagMULTI_QI', +'tagOBJREF', +'tagOBJREFDATA', +'tagORPCTHAT', 'tagORPCTHIS', +'tagORPCTHIS32', +'tagORPC_EXTENT', +'tagORPC_EXTENT_ARRAY', +'tagOXID_INFO', +'tagOpaqueData', 'tagPARAMDESC', 'tagPARAMDESCEX', 'tagPROCESSENTRY32', 'tagPROCESSENTRY32W', +'tagREMINTERFACEREF', +'tagREMQIRESULT', 'tagRGBQUAD', 'tagRGBTRIPLE', +'tagRPCOLEMESSAGE', 'tagSAFEARRAY', 'tagSAFEARRAYBOUND', 'tagSOLE_AUTHENTICATION_SERVICE', 'tagSTATSTG', +'tagSTDOBJREF', 'tagTHREADENTRY32', 'tagTLIBATTR', 'tagTYPEATTR', @@ -14059,6 +14154,7 @@ enums = {'ACCESS_MODE', 'ACL_INFORMATION_CLASS', 'ACTIVATEOPTIONS', +'ACTIVATION_STAGE', 'ADDRESS_MODE', 'ALPC_MESSAGE_INFORMATION_CLASS', 'ALPC_PORT_INFORMATION_CLASS', @@ -14081,6 +14177,7 @@ 'COINIT', 'COMPUTER_NAME_FORMAT', 'COMSD', +'CPFLAGS', 'DESCKIND', 'DNS_FREE_TYPE', 'DataKind', @@ -14112,9 +14209,11 @@ 'IO_PRIORITY_HINT', 'KEY_INFORMATION_CLASS', 'KEY_VALUE_INFORMATION_CLASS', +'LocalServerType', 'MEMORY_INFORMATION_CLASS', 'MEM_EXTENDED_PARAMETER_TYPE', 'MIB_TCP_STATE', +'MSHCTX', 'MSHLFLAGS', 'MULTIPLE_TRUSTEE_OPERATION', 'NDR_FORMAT_CHARACTER', @@ -14162,6 +14261,7 @@ 'SICHINTF', 'SID_NAME_USE', 'SIGDN', +'STREAM_SEEK', 'SYM_TYPE', 'SYSKIND', 'SYSTEM_INFORMATION_CLASS', @@ -14186,6 +14286,7 @@ 'TRUSTEE_FORM', 'TRUSTEE_TYPE', 'TYPEKIND', +'ThreadingModel', 'UDP_TABLE_CLASS', 'UdtKind', 'VARENUM', @@ -14283,18 +14384,24 @@ '_WELL_KNOWN_SID_TYPE', '__MIDL_IBackgroundCopyJob2_0001', '__MIDL_IBackgroundCopyJob2_0002', +'tagACTIVATION_STAGE', 'tagCALLCONV', 'tagCALLFRAME_WALK', 'tagCLSCTX', 'tagCOINIT', 'tagCOMSD', +'tagCPFLAGS', 'tagDESCKIND', 'tagFUNCKIND', 'tagINVOKEKIND', +'tagLocalServerType', +'tagMSHCTX', 'tagMSHLFLAGS', +'tagSTREAM_SEEK', 'tagSYSKIND', 'tagTOKEN_TYPE', 'tagTYPEKIND', +'tagThreadingModel', 'tagVARKIND', 'tag_WBEMSTATUS', 'tag_WBEM_CHANGE_FLAG_TYPE', @@ -14386,7 +14493,9 @@ 'CoGetInterceptor', 'CoInitializeEx', 'CoInitializeSecurity', +'CoMarshalInterface', 'CoTaskMemFree', +'CoUnmarshalInterface', 'CommitTransaction', 'ConnectNamedPipe', 'ContinueDebugEvent', @@ -14425,6 +14534,7 @@ 'CreateRemoteThread', 'CreateServiceA', 'CreateServiceW', +'CreateStreamOnHGlobal', 'CreateThread', 'CreateToolhelp32Snapshot', 'CreateTransaction', @@ -14616,6 +14726,7 @@ 'GetFirmwareEnvironmentVariableExW', 'GetFirmwareEnvironmentVariableW', 'GetForegroundWindow', +'GetHGlobalFromStream', 'GetIfTable', 'GetInterfaceInfo', 'GetIpAddrTable', @@ -15031,6 +15142,7 @@ 'SymEnumTypes', 'SymEnumTypesByName', 'SymEnumTypesByNameW', +'SymEnumTypesW', 'SymEnumerateModules64', 'SymEnumerateModulesW64', 'SymFromAddr', @@ -15144,6 +15256,10 @@ interfaces = {'IAction', 'IActionCollection', +'IActivationProperties', +'IActivationPropertiesIn', +'IActivationPropertiesOut', +'IActivationStageInfo', 'IApplicationActivationManager', 'IBackgroundCopyCallback', 'IBackgroundCopyError', @@ -15154,17 +15270,27 @@ 'IBackgroundCopyJob2', 'IBackgroundCopyManager', 'IBindCtx', +'ICallFactory', 'ICallFrame', 'ICallFrameEvents', 'ICallFrameWalker', 'ICallInterceptor', +'IChannelHook', +'IClassClassicInfo', +'IClassFactory', +'IClientSecurity', +'IComCatalog', +'IComClassInfo', 'IComHandlerAction', +'IContext', 'IDispatch', 'IEmailAction', 'IEnumBackgroundCopyFiles', 'IEnumBackgroundCopyJobs', +'IEnumContextProps', 'IEnumExplorerCommand', 'IEnumMoniker', +'IEnumSTATSTG', 'IEnumShellItems', 'IEnumString', 'IEnumVARIANT', @@ -15172,30 +15298,50 @@ 'IExecAction', 'IExplorerCommand', 'IIdleSettings', +'IInitActivationPropertiesIn', +'IInternalUnknown', +'IMarshal', 'IMoniker', 'INetFwPolicy2', 'INetFwRule', 'INetFwRules', 'INetFwServiceRestriction', 'INetworkSettings', +'IObjContext', +'IOpaqueDataInfo', 'IPackageDebugSettings', 'IPackageExecutionStateChangeNotification', 'IPersist', 'IPersistFile', 'IPrincipal', +'IPrivActivationPropertiesIn', +'IPrivActivationPropertiesOut', +'IProxyManager', +'IProxyServerIdentity', 'IRegisteredTask', 'IRegisteredTaskCollection', 'IRegistrationInfo', +'IRemUnknown', 'IRepetitionPattern', +'IRpcChannelBuffer', +'IRpcHelper', +'IRpcOptions', +'IRpcStubBuffer', 'IRunningObjectTable', 'IRunningTask', 'IRunningTaskCollection', +'IScmReplyInfo', +'IScmRequestInfo', 'IShellItem', 'IShellItemArray', 'IShellLinkA', 'IShellLinkW', 'IShowMessageAction', +'IStandardActivator', +'IStdIdentity', +'IStorage', 'IStream', +'ISystemActivator', 'ITaskDefinition', 'ITaskFolder', 'ITaskFolderCollection', diff --git a/windows/generated_def/windef.py b/windows/generated_def/windef.py index 932222c6..6e197d15 100644 --- a/windows/generated_def/windef.py +++ b/windows/generated_def/windef.py @@ -143,6 +143,32 @@ def CTL_CODE(DeviceType, Function, Method, Access): NUM_CR_RESULTS = make_flag("NUM_CR_RESULTS", ( 0x0000003C )) PCD_MAX_MEMORY = make_flag("PCD_MAX_MEMORY", 2) PCD_MAX_IO = make_flag("PCD_MAX_IO", 2) +ORPCF_NULL = make_flag("ORPCF_NULL", ( 0 )) +ORPCF_LOCAL = make_flag("ORPCF_LOCAL", ( 1 )) +ORPCF_RESERVED1 = make_flag("ORPCF_RESERVED1", ( 2 )) +ORPCF_RESERVED2 = make_flag("ORPCF_RESERVED2", ( 4 )) +ORPCF_RESERVED3 = make_flag("ORPCF_RESERVED3", ( 8 )) +ORPCF_RESERVED4 = make_flag("ORPCF_RESERVED4", ( 16 )) +ORPCF_INPUT_SYNC = make_flag("ORPCF_INPUT_SYNC", ORPCF_RESERVED1) +ORPCF_ASYNC = make_flag("ORPCF_ASYNC", ORPCF_RESERVED2) +ORPCF_DYNAMIC_CLOAKING = make_flag("ORPCF_DYNAMIC_CLOAKING", ORPCF_RESERVED3) +ORPCF_REJECTED = make_flag("ORPCF_REJECTED", ORPCF_RESERVED1) +ORPCF_RETRY_LATER = make_flag("ORPCF_RETRY_LATER", ORPCF_RESERVED2) +OBJREF_SIGNATURE = make_flag("OBJREF_SIGNATURE", ( 0x574f454d )) +OBJREF_STANDARD = make_flag("OBJREF_STANDARD", ( 0x1 )) +OBJREF_HANDLER = make_flag("OBJREF_HANDLER", ( 0x2 )) +OBJREF_CUSTOM = make_flag("OBJREF_CUSTOM", ( 0x4 )) +OBJREF_EXTENDED = make_flag("OBJREF_EXTENDED", ( 0x8 )) +SORF_OXRES1 = make_flag("SORF_OXRES1", ( 0x1 )) +SORF_OXRES2 = make_flag("SORF_OXRES2", ( 0x20 )) +SORF_OXRES3 = make_flag("SORF_OXRES3", ( 0x40 )) +SORF_OXRES4 = make_flag("SORF_OXRES4", ( 0x80 )) +SORF_OXRES5 = make_flag("SORF_OXRES5", ( 0x100 )) +SORF_OXRES6 = make_flag("SORF_OXRES6", ( 0x200 )) +SORF_OXRES7 = make_flag("SORF_OXRES7", ( 0x400 )) +SORF_OXRES8 = make_flag("SORF_OXRES8", ( 0x800 )) +SORF_NULL = make_flag("SORF_NULL", ( 0 )) +SORF_NOPING = make_flag("SORF_NOPING", ( 0x1000 )) CWCSTORAGENAME = make_flag("CWCSTORAGENAME", 32) STGM_DIRECT = make_flag("STGM_DIRECT", 0x00000000) STGM_TRANSACTED = make_flag("STGM_TRANSACTED", 0x00010000) @@ -2410,11 +2436,11 @@ def CTL_CODE(DeviceType, Function, Method, Access): FAX_PORT_QUERY = make_flag("FAX_PORT_QUERY", ( 0x0010 )) FAX_PORT_SET = make_flag("FAX_PORT_SET", ( 0x0020 )) FAX_JOB_MANAGE = make_flag("FAX_JOB_MANAGE", ( 0x0040 )) -COM_EXECUTE = make_flag("COM_EXECUTE", ( 0x0001 )) -COM_EXECUTE_LOCAL = make_flag("COM_EXECUTE_LOCAL", ( 0x0002 )) -COM_EXECUTE_REMOTE = make_flag("COM_EXECUTE_REMOTE", ( 0x0004 )) -COM_ACTIVATE_LOCAL = make_flag("COM_ACTIVATE_LOCAL", ( 0x0008 )) -COM_ACTIVATE_REMOTE = make_flag("COM_ACTIVATE_REMOTE", ( 0x0010 )) +COM_RIGHTS_EXECUTE = make_flag("COM_RIGHTS_EXECUTE", ( 0x0001 )) +COM_RIGHTS_EXECUTE_LOCAL = make_flag("COM_RIGHTS_EXECUTE_LOCAL", ( 0x0002 )) +COM_RIGHTS_EXECUTE_REMOTE = make_flag("COM_RIGHTS_EXECUTE_REMOTE", ( 0x0004 )) +COM_RIGHTS_ACTIVATE_LOCAL = make_flag("COM_RIGHTS_ACTIVATE_LOCAL", ( 0x0008 )) +COM_RIGHTS_ACTIVATE_REMOTE = make_flag("COM_RIGHTS_ACTIVATE_REMOTE", ( 0x0010 )) SECTION_QUERY = make_flag("SECTION_QUERY", 0x0001) SECTION_MAP_WRITE = make_flag("SECTION_MAP_WRITE", 0x0002) SECTION_MAP_READ = make_flag("SECTION_MAP_READ", 0x0004) diff --git a/windows/generated_def/winfuncs.py b/windows/generated_def/winfuncs.py index adab3a2d..db1515c6 100644 --- a/windows/generated_def/winfuncs.py +++ b/windows/generated_def/winfuncs.py @@ -405,6 +405,26 @@ SysFreeStringPrototype = WINFUNCTYPE(VOID, BSTR) SysFreeStringParams = ((1, 'bstrString'),) +#def CreateStreamOnHGlobal(hGlobal, fDeleteOnRelease, ppstm): +# return CreateStreamOnHGlobal.ctypes_function(hGlobal, fDeleteOnRelease, ppstm) +CreateStreamOnHGlobalPrototype = WINFUNCTYPE(HRESULT, HGLOBAL, BOOL, POINTER(LPSTREAM)) +CreateStreamOnHGlobalParams = ((1, 'hGlobal'), (1, 'fDeleteOnRelease'), (1, 'ppstm')) + +#def GetHGlobalFromStream(pstm, phglobal): +# return GetHGlobalFromStream.ctypes_function(pstm, phglobal) +GetHGlobalFromStreamPrototype = WINFUNCTYPE(HRESULT, LPUNKNOWN, POINTER(HGLOBAL)) +GetHGlobalFromStreamParams = ((1, 'pstm'), (1, 'phglobal')) + +#def CoMarshalInterface(pStm, riid, pUnk, dwDestContext, pvDestContext, mshlflags): +# return CoMarshalInterface.ctypes_function(pStm, riid, pUnk, dwDestContext, pvDestContext, mshlflags) +CoMarshalInterfacePrototype = WINFUNCTYPE(HRESULT, LPUNKNOWN, REFIID, LPUNKNOWN, DWORD, LPVOID, DWORD) +CoMarshalInterfaceParams = ((1, 'pStm'), (1, 'riid'), (1, 'pUnk'), (1, 'dwDestContext'), (1, 'pvDestContext'), (1, 'mshlflags')) + +#def CoUnmarshalInterface(pStm, riid, ppv): +# return CoUnmarshalInterface.ctypes_function(pStm, riid, ppv) +CoUnmarshalInterfacePrototype = WINFUNCTYPE(HRESULT, PVOID, REFIID, POINTER(LPVOID)) +CoUnmarshalInterfaceParams = ((1, 'pStm'), (1, 'riid'), (1, 'ppv')) + #def CryptCATAdminCalcHashFromFileHandle(hFile, pcbHash, pbHash, dwFlags): # return CryptCATAdminCalcHashFromFileHandle.ctypes_function(hFile, pcbHash, pbHash, dwFlags) CryptCATAdminCalcHashFromFileHandlePrototype = WINFUNCTYPE(BOOL, HANDLE, POINTER(DWORD), POINTER(BYTE), DWORD) @@ -2440,21 +2460,6 @@ SymEnumSymbolsExPrototype = WINFUNCTYPE(BOOL, HANDLE, ULONG64, PCSTR, PVOID, PVOID, DWORD) SymEnumSymbolsExParams = ((1, 'hProcess'), (1, 'BaseOfDll'), (1, 'Mask'), (1, 'EnumSymbolsCallback'), (1, 'UserContext'), (1, 'Options')) -#def SymEnumTypes(hProcess, BaseOfDll, EnumSymbolsCallback, UserContext): -# return SymEnumTypes.ctypes_function(hProcess, BaseOfDll, EnumSymbolsCallback, UserContext) -SymEnumTypesPrototype = WINFUNCTYPE(BOOL, HANDLE, ULONG64, PVOID, PVOID) -SymEnumTypesParams = ((1, 'hProcess'), (1, 'BaseOfDll'), (1, 'EnumSymbolsCallback'), (1, 'UserContext')) - -#def SymEnumTypesByName(hProcess, BaseOfDll, mask, EnumSymbolsCallback, UserContext): -# return SymEnumTypesByName.ctypes_function(hProcess, BaseOfDll, mask, EnumSymbolsCallback, UserContext) -SymEnumTypesByNamePrototype = WINFUNCTYPE(BOOL, HANDLE, ULONG64, PCSTR, PVOID, PVOID) -SymEnumTypesByNameParams = ((1, 'hProcess'), (1, 'BaseOfDll'), (1, 'mask'), (1, 'EnumSymbolsCallback'), (1, 'UserContext')) - -#def SymEnumTypesByNameW(hProcess, BaseOfDll, mask, EnumSymbolsCallback, UserContext): -# return SymEnumTypesByNameW.ctypes_function(hProcess, BaseOfDll, mask, EnumSymbolsCallback, UserContext) -SymEnumTypesByNameWPrototype = WINFUNCTYPE(BOOL, HANDLE, ULONG64, PCWSTR, PVOID, PVOID) -SymEnumTypesByNameWParams = ((1, 'hProcess'), (1, 'BaseOfDll'), (1, 'mask'), (1, 'EnumSymbolsCallback'), (1, 'UserContext')) - #def SymEnumerateModules64(hProcess, EnumModulesCallback, UserContext): # return SymEnumerateModules64.ctypes_function(hProcess, EnumModulesCallback, UserContext) SymEnumerateModules64Prototype = WINFUNCTYPE(BOOL, HANDLE, PVOID, PVOID) @@ -2675,6 +2680,26 @@ SymSetSearchPathWPrototype = WINFUNCTYPE(BOOL, HANDLE, PCWSTR) SymSetSearchPathWParams = ((1, 'hProcess'), (1, 'SearchPath')) +#def SymEnumTypes(hProcess, BaseOfDll, EnumSymbolsCallback, UserContext): +# return SymEnumTypes.ctypes_function(hProcess, BaseOfDll, EnumSymbolsCallback, UserContext) +SymEnumTypesPrototype = WINFUNCTYPE(BOOL, HANDLE, ULONG64, PSYM_ENUMERATESYMBOLS_CALLBACK, PVOID) +SymEnumTypesParams = ((1, 'hProcess'), (1, 'BaseOfDll'), (1, 'EnumSymbolsCallback'), (1, 'UserContext')) + +#def SymEnumTypesW(hProcess, BaseOfDll, EnumSymbolsCallback, UserContext): +# return SymEnumTypesW.ctypes_function(hProcess, BaseOfDll, EnumSymbolsCallback, UserContext) +SymEnumTypesWPrototype = WINFUNCTYPE(BOOL, HANDLE, ULONG64, PSYM_ENUMERATESYMBOLS_CALLBACKW, PVOID) +SymEnumTypesWParams = ((1, 'hProcess'), (1, 'BaseOfDll'), (1, 'EnumSymbolsCallback'), (1, 'UserContext')) + +#def SymEnumTypesByName(hProcess, BaseOfDll, mask, EnumSymbolsCallback, UserContext): +# return SymEnumTypesByName.ctypes_function(hProcess, BaseOfDll, mask, EnumSymbolsCallback, UserContext) +SymEnumTypesByNamePrototype = WINFUNCTYPE(BOOL, HANDLE, ULONG64, PCSTR, PSYM_ENUMERATESYMBOLS_CALLBACK, PVOID) +SymEnumTypesByNameParams = ((1, 'hProcess'), (1, 'BaseOfDll'), (1, 'mask'), (1, 'EnumSymbolsCallback'), (1, 'UserContext')) + +#def SymEnumTypesByNameW(hProcess, BaseOfDll, mask, EnumSymbolsCallback, UserContext): +# return SymEnumTypesByNameW.ctypes_function(hProcess, BaseOfDll, mask, EnumSymbolsCallback, UserContext) +SymEnumTypesByNameWPrototype = WINFUNCTYPE(BOOL, HANDLE, ULONG64, PCWSTR, PSYM_ENUMERATESYMBOLS_CALLBACKW, PVOID) +SymEnumTypesByNameWParams = ((1, 'hProcess'), (1, 'BaseOfDll'), (1, 'mask'), (1, 'EnumSymbolsCallback'), (1, 'UserContext')) + #def CreateEventA(lpEventAttributes, bManualReset, bInitialState, lpName): # return CreateEventA.ctypes_function(lpEventAttributes, bManualReset, bInitialState, lpName) CreateEventAPrototype = WINFUNCTYPE(HANDLE, LPSECURITY_ATTRIBUTES, BOOL, BOOL, LPCSTR) diff --git a/windows/generated_def/winstructs.py b/windows/generated_def/winstructs.py index 88be678e..1aa45c87 100644 --- a/windows/generated_def/winstructs.py +++ b/windows/generated_def/winstructs.py @@ -93,6 +93,7 @@ class _CRYPTPROTECT_PROMPTSTRUCT(Structure): LPWCH = c_wchar BSTR = c_wchar_p OLECHAR = c_wchar +SNB = POINTER(POINTER(OLECHAR)) POLECHAR = c_wchar_p PZZWSTR = c_wchar_p PUCHAR = POINTER(UCHAR) @@ -128,7 +129,7 @@ class _CRYPTPROTECT_PROMPTSTRUCT(Structure): DISPID = LONG MEMBERID = DISPID LRESULT = LONG_PTR -LPUNKNOWN = POINTER(PVOID) +LPUNKNOWN = PVOID LPPOINT = POINTER(POINT) LPRECT = POINTER(RECT) SPC_UUID = BYTE*16 @@ -137,6 +138,8 @@ class _CRYPTPROTECT_PROMPTSTRUCT(Structure): PWINDBG_EXTENSION_APIS64 = PVOID FILEOP_FLAGS = WORD NET_API_STATUS = DWORD +PVOID32 = DWORD +PVOID64 = DWORD64 NCRYPT_HANDLE = ULONG_PTR NCRYPT_PROV_HANDLE = ULONG_PTR NCRYPT_KEY_HANDLE = ULONG_PTR @@ -253,6 +256,12 @@ def __repr__(self): RPCOLEDATAREP = ULONG HREFTYPE = DWORD SFGAOF = ULONG +ID = ULONG64 +MID = ID +OXID = ID +OID = ID +SETID = ID +LPSTREAM = PVOID#Istream* GROUP = UINT SOCKET = HANDLE WNDPROC = PVOID @@ -473,15 +482,18 @@ class _GUID(Structure): ("Data3", USHORT), ("Data4", BYTE * (8)), ] +CID = _GUID CLSID = _GUID GUID = _GUID IID = _GUID +IPID = _GUID LPCGUID = POINTER(_GUID) LPCLSID = POINTER(_GUID) LPGUID = POINTER(_GUID) REFCLSID = POINTER(_GUID) REFGUID = POINTER(_GUID) REFIID = POINTER(_GUID) +REFIPID = POINTER(_GUID) INITIAL_GUID = _GUID class _GUID(INITIAL_GUID): @@ -507,7 +519,7 @@ def __repr__(self): self.name = None if self.name is None: return ''.format(self.strid.upper()) - return ''.format(self.strid.upper(), self.name) + return ''.format(self.strid.upper(), self.name) __sprint__ = __repr__ @@ -543,15 +555,18 @@ def __eq__(self, other): return NotImplemented return (self.Data1, self.Data2, self.Data3, self.Data4[:]) == (other.Data1, other.Data2, other.Data3, other.Data4[:]) +CID = _GUID CLSID = _GUID GUID = _GUID IID = _GUID +IPID = _GUID LPCGUID = POINTER(_GUID) LPCLSID = POINTER(_GUID) LPGUID = POINTER(_GUID) REFCLSID = POINTER(_GUID) REFGUID = POINTER(_GUID) REFIID = POINTER(_GUID) +REFIPID = POINTER(_GUID) class IO_Des_s(Structure): _fields_ = [ ("IOD_Count", DWORD), @@ -839,16 +854,6 @@ class tagCALLFRAME_WALK(EnumType): CALLFRAME_WALK = tagCALLFRAME_WALK -SD_LAUNCHPERMISSIONS = EnumValue("tagCOMSD", "SD_LAUNCHPERMISSIONS", 0x0) -SD_ACCESSPERMISSIONS = EnumValue("tagCOMSD", "SD_ACCESSPERMISSIONS", 0x1) -SD_LAUNCHRESTRICTIONS = EnumValue("tagCOMSD", "SD_LAUNCHRESTRICTIONS", 0x2) -SD_ACCESSRESTRICTIONS = EnumValue("tagCOMSD", "SD_ACCESSRESTRICTIONS", 0x3) -class tagCOMSD(EnumType): - values = [SD_LAUNCHPERMISSIONS, SD_ACCESSPERMISSIONS, SD_LAUNCHRESTRICTIONS, SD_ACCESSRESTRICTIONS] - mapper = FlagMapper(*values) -COMSD = tagCOMSD - - class tagMULTI_QI(Structure): _fields_ = [ ("pIID", POINTER(IID)), @@ -1008,6 +1013,576 @@ class __tagVARIANT(Structure): VARIANTARG = __tagVARIANT _tagVARIANT = __tagVARIANT +SD_LAUNCHPERMISSIONS = EnumValue("tagCOMSD", "SD_LAUNCHPERMISSIONS", 0x0) +SD_ACCESSPERMISSIONS = EnumValue("tagCOMSD", "SD_ACCESSPERMISSIONS", 0x1) +SD_LAUNCHRESTRICTIONS = EnumValue("tagCOMSD", "SD_LAUNCHRESTRICTIONS", 0x2) +SD_ACCESSRESTRICTIONS = EnumValue("tagCOMSD", "SD_ACCESSRESTRICTIONS", 0x3) +class tagCOMSD(EnumType): + values = [SD_LAUNCHPERMISSIONS, SD_ACCESSPERMISSIONS, SD_LAUNCHRESTRICTIONS, SD_ACCESSRESTRICTIONS] + mapper = FlagMapper(*values) +COMSD = tagCOMSD + + +CPFLAG_NONE = EnumValue("tagCPFLAGS", "CPFLAG_NONE", 0x0) +CPFLAG_PROPAGATE = EnumValue("tagCPFLAGS", "CPFLAG_PROPAGATE", 0x1) +CPFLAG_EXPOSE = EnumValue("tagCPFLAGS", "CPFLAG_EXPOSE", 0x2) +CPFLAG_ENVOY = EnumValue("tagCPFLAGS", "CPFLAG_ENVOY", 0x4) +CPFLAG_MONITORSTUB = EnumValue("tagCPFLAGS", "CPFLAG_MONITORSTUB", 0x8) +CPFLAG_MONITORPROXY = EnumValue("tagCPFLAGS", "CPFLAG_MONITORPROXY", 0x10) +CPFLAG_DONTCOMPARE = EnumValue("tagCPFLAGS", "CPFLAG_DONTCOMPARE", 0x20) +class tagCPFLAGS(EnumType): + values = [CPFLAG_NONE, CPFLAG_PROPAGATE, CPFLAG_EXPOSE, CPFLAG_ENVOY, CPFLAG_MONITORSTUB, CPFLAG_MONITORPROXY, CPFLAG_DONTCOMPARE] + mapper = FlagMapper(*values) +CPFLAGS = tagCPFLAGS + + +CLIENT_CONTEXT_STAGE = EnumValue("tagACTIVATION_STAGE", "CLIENT_CONTEXT_STAGE", 0x1) +CLIENT_MACHINE_STAGE = EnumValue("tagACTIVATION_STAGE", "CLIENT_MACHINE_STAGE", 0x2) +SERVER_MACHINE_STAGE = EnumValue("tagACTIVATION_STAGE", "SERVER_MACHINE_STAGE", 0x3) +SERVER_PROCESS_STAGE = EnumValue("tagACTIVATION_STAGE", "SERVER_PROCESS_STAGE", 0x4) +SERVER_CONTEXT_STAGE = EnumValue("tagACTIVATION_STAGE", "SERVER_CONTEXT_STAGE", 0x5) +class tagACTIVATION_STAGE(EnumType): + values = [CLIENT_CONTEXT_STAGE, CLIENT_MACHINE_STAGE, SERVER_MACHINE_STAGE, SERVER_PROCESS_STAGE, SERVER_CONTEXT_STAGE] + mapper = FlagMapper(*values) +ACTIVATION_STAGE = tagACTIVATION_STAGE + + +ApartmentThreaded = EnumValue("tagThreadingModel", "ApartmentThreaded", 0x0) +FreeThreaded = EnumValue("tagThreadingModel", "FreeThreaded", 0x1) +SingleThreaded = EnumValue("tagThreadingModel", "SingleThreaded", 0x2) +BothThreaded = EnumValue("tagThreadingModel", "BothThreaded", 0x3) +NeutralThreaded = EnumValue("tagThreadingModel", "NeutralThreaded", 0x4) +class tagThreadingModel(EnumType): + values = [ApartmentThreaded, FreeThreaded, SingleThreaded, BothThreaded, NeutralThreaded] + mapper = FlagMapper(*values) +ThreadingModel = tagThreadingModel + + +LocalServerType16 = EnumValue("tagLocalServerType", "LocalServerType16", 0x0) +LocalServerType32 = EnumValue("tagLocalServerType", "LocalServerType32", 0x1) +class tagLocalServerType(EnumType): + values = [LocalServerType16, LocalServerType32] + mapper = FlagMapper(*values) +LocalServerType = tagLocalServerType + + +STREAM_SEEK_SET = EnumValue("tagSTREAM_SEEK", "STREAM_SEEK_SET", 0x0) +STREAM_SEEK_CUR = EnumValue("tagSTREAM_SEEK", "STREAM_SEEK_CUR", 0x1) +STREAM_SEEK_END = EnumValue("tagSTREAM_SEEK", "STREAM_SEEK_END", 0x2) +class tagSTREAM_SEEK(EnumType): + values = [STREAM_SEEK_SET, STREAM_SEEK_CUR, STREAM_SEEK_END] + mapper = FlagMapper(*values) +STREAM_SEEK = tagSTREAM_SEEK + + +MSHCTX_LOCAL = EnumValue("tagMSHCTX", "MSHCTX_LOCAL", 0x0) +MSHCTX_NOSHAREDMEM = EnumValue("tagMSHCTX", "MSHCTX_NOSHAREDMEM", 0x1) +MSHCTX_DIFFERENTMACHINE = EnumValue("tagMSHCTX", "MSHCTX_DIFFERENTMACHINE", 0x2) +MSHCTX_INPROC = EnumValue("tagMSHCTX", "MSHCTX_INPROC", 0x3) +MSHCTX_CROSSCTX = EnumValue("tagMSHCTX", "MSHCTX_CROSSCTX", 0x4) +MSHCTX_CONTAINER = EnumValue("tagMSHCTX", "MSHCTX_CONTAINER", 0x5) +class tagMSHCTX(EnumType): + values = [MSHCTX_LOCAL, MSHCTX_NOSHAREDMEM, MSHCTX_DIFFERENTMACHINE, MSHCTX_INPROC, MSHCTX_CROSSCTX, MSHCTX_CONTAINER] + mapper = FlagMapper(*values) +MSHCTX = tagMSHCTX + + +class tagOpaqueData(Structure): + _fields_ = [ + ("guid", GUID), + ("dataLength", ULONG), + ("reserved1", ULONG), + ("reserved2", ULONG), + ("data", POINTER(BYTE)), + ] +OpaqueData = tagOpaqueData + +class tagSTDOBJREF(Structure): + _fields_ = [ + ("flags", ULONG), + ("cPublicRefs", ULONG), + ("oxid", OXID), + ("oid", OID), + ("ipid", IPID), + ] +STDOBJREF = tagSTDOBJREF + +class tagDATAELEMENT(Structure): + _fields_ = [ + ("dataID", GUID), + ("cbSize", ULONG), + ("cbRounded", ULONG), + ("Data", BYTE * (1)), + ] +DATAELEMENT = tagDATAELEMENT +PDATAELEMENT = POINTER(tagDATAELEMENT) + +class tagOBJREFDATA(Structure): + _fields_ = [ + ("nElms", ULONG), + ("ppElmArray", POINTER(PDATAELEMENT)), + ] +OBJREFDATA = tagOBJREFDATA + +class tagDUALSTRINGARRAY(Structure): + _fields_ = [ + ("wNumEntries", USHORT), + ("wSecurityOffset", USHORT), + ("aStringArray", USHORT * (1)), + ] +DUALSTRINGARRAY = tagDUALSTRINGARRAY + +INITIAL_tagDUALSTRINGARRAY = tagDUALSTRINGARRAY + +class tagDUALSTRINGARRAY(INITIAL_tagDUALSTRINGARRAY): + @property + def rawbuffer(self): + array_size = self.wNumEntries + array_type = self.aStringArray._type_ + new_buffer_type = (array_type * array_size) + buffer = new_buffer_type.from_address(ctypes.addressof(self.aStringArray)) + return buffer + + + + @property + def bidings(self): + rawbuffer = self.rawbuffer + rawarray = rawbuffer[:] # Allow to find 0 in USHORT without overlap + rawbytes = bytearray(rawbuffer) # Allow to access to bytes to utf-16-le decode + results = [] + next_start = 0 + + # STRINGBINDING documentation says that it starts with a USHORT wTowerId + # But i don't see it in our response.. (local response ?) + # So ignore it for now + for i in range(100): + current_index = rawarray.index(0, next_start) + new_entry = rawbytes[next_start * 2: current_index * 2] + if not new_entry: + return results + results.append(new_entry.decode("utf-16-le")) # Does not handle full unicode I think but.. + next_start = current_index + 1 + # Should not happen + raise ValueError("Could not parse DUALSTRINGARRAY") + + @property + def security_bidings(self): + rawbuffer = self.rawbuffer + rawarray = rawbuffer[self.wSecurityOffset:] + rawbytes = bytearray(rawbuffer)[self.wSecurityOffset * 2:] + results = [] + next_start = 0 + + for i in range(100): + wAuthnSvc = rawarray[next_start] + if wAuthnSvc == 0: + return results + reserved = rawarray[next_start + 1] + current_index = rawarray.index(0, next_start + 2) + new_entry = rawbytes[(next_start + 2) * 2:current_index * 2] + results.append((wAuthnSvc, reserved, new_entry.decode("utf-16-le"))) # Does not handle full unicode I think but.. + next_start = current_index + 1 + # Should not happen + raise ValueError("Could not parse DUALSTRINGARRAY security bidings") + + + + + +DUALSTRINGARRAY = tagDUALSTRINGARRAY +class _ANON__ANON_TAGOBJREF_SUB_UNION_1_SUB_STRUCTURE_1(Structure): + _fields_ = [ + ("std", STDOBJREF), + ("saResAddr", DUALSTRINGARRAY), + ] + + +class _ANON__ANON_TAGOBJREF_SUB_UNION_1_SUB_STRUCTURE_2(Structure): + _fields_ = [ + ("std", STDOBJREF), + ("clsid", CLSID), + ("saResAddr", DUALSTRINGARRAY), + ] + + +class _ANON__ANON_TAGOBJREF_SUB_UNION_1_SUB_STRUCTURE_3(Structure): + _fields_ = [ + ("clsid", CLSID), + ("cbExtension", ULONG), + ("size", ULONG), + ("pData", POINTER(BYTE)), + ] + + +class _ANON__ANON_TAGOBJREF_SUB_UNION_1_SUB_STRUCTURE_4(Structure): + _fields_ = [ + ("std", STDOBJREF), + ("pORData", POINTER(OBJREFDATA)), + ("saResAddr", DUALSTRINGARRAY), + ] + +class _ANON_TAGOBJREF_SUB_UNION_1(Union): + _anonymous_ = ("u_standard","u_handler","u_custom","u_extended") + _fields_ = [ + ("u_standard", _ANON__ANON_TAGOBJREF_SUB_UNION_1_SUB_STRUCTURE_1), + ("u_handler", _ANON__ANON_TAGOBJREF_SUB_UNION_1_SUB_STRUCTURE_2), + ("u_custom", _ANON__ANON_TAGOBJREF_SUB_UNION_1_SUB_STRUCTURE_3), + ("u_extended", _ANON__ANON_TAGOBJREF_SUB_UNION_1_SUB_STRUCTURE_4), + ] + +class tagOBJREF(Structure): + _anonymous_ = ("u_objref",) + _fields_ = [ + ("signature", ULONG), + ("flags", ULONG), + ("iid", GUID), + ("u_objref", _ANON_TAGOBJREF_SUB_UNION_1), + ] +OBJREF = tagOBJREF + +class tagCOMVERSION(Structure): + _fields_ = [ + ("MajorVersion", USHORT), + ("MinorVersion", USHORT), + ] +COMVERSION = tagCOMVERSION + +class tagORPC_EXTENT(Structure): + _fields_ = [ + ("id", _GUID), + ("size", ULONG), + ("data", BYTE * (1)), + ] +ORPC_EXTENT = tagORPC_EXTENT +PORPC_EXTENT = tagORPC_EXTENT + +class tagORPC_EXTENT_ARRAY(Structure): + _fields_ = [ + ("size", ULONG), + ("reserved", ULONG), + ("extent", POINTER(PORPC_EXTENT)), + ] +ORPC_EXTENT_ARRAY = tagORPC_EXTENT_ARRAY + +class tagORPCTHIS(Structure): + _fields_ = [ + ("version", COMVERSION), + ("flags", ULONG), + ("reserved1", ULONG), + ("cid", GUID), + ("extensions", PVOID), + ] +ORPCTHIS = tagORPCTHIS + +class tagORPCTHIS32(Structure): + _fields_ = [ + ("version", COMVERSION), + ("flags", ULONG), + ("reserved1", ULONG), + ("cid", GUID), + ("extensions", PVOID32), + ] +ORPCTHIS32 = tagORPCTHIS32 + +class tagOXID_INFO(Structure): + _fields_ = [ + ("dwTid", DWORD), + ("dwPid", DWORD), + ("dwAuthnHint", DWORD), + ("version", COMVERSION), + ("ipidRemUnknown", IPID), + ("dwFlags", DWORD), + ("psa", POINTER(DUALSTRINGARRAY)), + ] +OXID_INFO = tagOXID_INFO + +class tagContextProperty(Structure): + _fields_ = [ + ("policyId", GUID), + ("flags", CPFLAGS), + ("pUnk", PVOID), + ] +ContextProperty = tagContextProperty + +class _PRIV_SCM_INFO(Structure): + _fields_ = [ + ("Apartment", LONG), + ("pwszWinstaDesktop", POINTER(WCHAR)), + ("ProcessSignature", ULONG64), + ("pEnvBlock", POINTER(WCHAR)), + ("EnvBlockLength", DWORD), + ] +PRIV_SCM_INFO = _PRIV_SCM_INFO + +class _REMOTE_REQUEST_SCM_INFO(Structure): + _fields_ = [ + ("ClientImpLevel", DWORD), + ("cRequestedProtseqs", USHORT), + ("pRequestedProtseqs", POINTER(USHORT)), + ] +REMOTE_REQUEST_SCM_INFO = _REMOTE_REQUEST_SCM_INFO + +class tagMInterfacePointer(Structure): + _fields_ = [ + ("ulCntData", ULONG), + ("abData", BYTE * (1)), + ] +MInterfacePointer = tagMInterfacePointer +PMInterfacePointer = POINTER(tagMInterfacePointer) + +INITIAL_tagMInterfacePointer = tagMInterfacePointer + +class tagMInterfacePointer(INITIAL_tagMInterfacePointer): + @property + def objref(self): + return OBJREF.from_address(ctypes.addressof(self.abData)) +MInterfacePointer = tagMInterfacePointer +PMInterfacePointer = POINTER(tagMInterfacePointer) +class tagRPCOLEMESSAGE(Structure): + _fields_ = [ + ("reserved1", PVOID), + ("dataRepresentation", RPCOLEDATAREP), + ("Buffer", PVOID), + ("cbBuffer", ULONG), + ("iMethod", ULONG), + ("reserved2", PVOID * (5)), + ("rpcFlags", ULONG), + ] +PRPCOLEMESSAGE = POINTER(tagRPCOLEMESSAGE) +RPCOLEMESSAGE = tagRPCOLEMESSAGE + +class tagREMQIRESULT(Structure): + _fields_ = [ + ("hResult", HRESULT), + ("std", STDOBJREF), + ] +PREMQIRESULT = POINTER(tagREMQIRESULT) +REMQIRESULT = tagREMQIRESULT + +class tagREMINTERFACEREF(Structure): + _fields_ = [ + ("ipid", IPID), + ("cPublicRefs", ULONG), + ("cPrivateRefs", ULONG), + ] +REMINTERFACEREF = tagREMINTERFACEREF + +class _PRIV_RESOLVER_INFO_LEGACY(Structure): + _fields_ = [ + ("OxidServer", OXID), + ("pServerORBindings", POINTER(DUALSTRINGARRAY)), + ("OxidInfo", OXID_INFO), + ("LocalMidOfRemote", MID), + ("DllServerModel", DWORD), + ("pwszDllServer", POINTER(WCHAR)), + ("FoundInROT", BOOL), + ] +PPRIV_RESOLVER_INFO_LEGACY = POINTER(_PRIV_RESOLVER_INFO_LEGACY) +PRIV_RESOLVER_INFO_LEGACY = _PRIV_RESOLVER_INFO_LEGACY + +class _REMOTE_REPLY_SCM_INFO(Structure): + _fields_ = [ + ("Oxid", OXID), + ("pdsaOxidBindings", POINTER(DUALSTRINGARRAY)), + ("ipidRemUnknown", IPID), + ("authnHint", DWORD), + ("serverVersion", COMVERSION), + ] +PREMOTE_REPLY_SCM_INFO = POINTER(_REMOTE_REPLY_SCM_INFO) +REMOTE_REPLY_SCM_INFO = _REMOTE_REPLY_SCM_INFO + +class CONTAINER_EXTENT(Structure): + _fields_ = [ + ("id", UINT), + ("version", UINT), + ("size", UINT), + ("data", BYTE * (1)), + ] + + +class CONTAINER_EXTENT_ARRAY(Structure): + _fields_ = [ + ("size", UINT), + ("reserved", UINT), + ("extent", POINTER(CONTAINER_EXTENT)), + ] + + +class HSTRING__(Structure): + _fields_ = [ + ("unused", INT), + ] + + +class CONTAINERVERSION(Structure): + _fields_ = [ + ("version", UINT), + ("capabilityFlags", UINT64), + ("extensions", POINTER(CONTAINER_EXTENT_ARRAY)), + ] + + +class _MIDL_ILocalObjectExporter_0007(Structure): + _fields_ = [ + ("dwTid", ULONG), + ("dwPid", ULONG), + ("dwAuthnHint", ULONG), + ("dcomVersion", tagCOMVERSION), + ("containerVersion", CONTAINERVERSION), + ("ipidRemUnknown", _GUID), + ("dwFlags", ULONG), + ("psa", POINTER(tagDUALSTRINGARRAY)), + ("guidProcessIdentifier", _GUID), + ("processHostId", UINT64), + ("clientDependencyBehavior", INT), + ("packageFullName", POINTER(HSTRING__)), + ("userSid", POINTER(HSTRING__)), + ("appcontainerSid", POINTER(HSTRING__)), + ("primaryOxid", UINT64), + ("primaryIpidRemUnknown", _GUID), + ] +MIDL_ILocalObjectExporter_0007 = _MIDL_ILocalObjectExporter_0007 + +class _PRIV_RESOLVER_INFO(Structure): + _fields_ = [ + ("OxidServer", UINT64), + ("pServerORBindings", POINTER(tagDUALSTRINGARRAY)), + ("OxidInfo", MIDL_ILocalObjectExporter_0007), + ("LocalMidOfRemote", UINT64), + ("FoundInROT", INT), + ] +PPRIV_RESOLVER_INFO = POINTER(_PRIV_RESOLVER_INFO) +PRIV_RESOLVER_INFO = _PRIV_RESOLVER_INFO + +class _MIDL_XmitDefs_0001(Structure): + _fields_ = [ + ("asyncOperationId", GUID), + ("oxidClientProcessNA", ULONG64), + ("originalClientLogicalThreadId", GUID), + ("uClientCausalityTraceId", ULONG64), + ] +MIDL_XmitDefs_0001 = _MIDL_XmitDefs_0001 + +class _LOCALTHIS(Structure): + _fields_ = [ + ("dwFlags", DWORD), + ("dwClientThread", DWORD), + ("passthroughTraceActivity", GUID), + ("callTraceActivity", GUID), + ("asyncRequestBlock", MIDL_XmitDefs_0001), + ("reserved", DWORD), + ("pTouchedAstaArray", PVOID), + ] +LOCALTHIS = _LOCALTHIS + +class _LOCALTHIS32(Structure): + _fields_ = [ + ("dwFlags", DWORD), + ("dwClientThread", DWORD), + ("passthroughTraceActivity", GUID), + ("callTraceActivity", GUID), + ("asyncRequestBlock", MIDL_XmitDefs_0001), + ("reserved", DWORD), + ("pTouchedAstaArray", PVOID32), + ] +LOCALTHIS32 = _LOCALTHIS32 + +class _MIDL_XmitDefs_0007(Structure): + _fields_ = [ + ("pointOfFailure", INT), + ("hrFailure", HRESULT), + ("sizeOfMarshaledErrorInfo", ULONG), + ("reserved", ULONG), + ("pMarshaledErrorInfo", POINTER(BYTE)), + ] + + +class _MIDL_XmitDefs_0005(Structure): + _fields_ = [ + ("sizeOfMarshaledResults", ULONG), + ("reserved", ULONG), + ("pMarshaledResults", POINTER(BYTE)), + ] + + +class _MIDL_XmitDefs_0008(Structure): + _fields_ = [ + ("outcome", INT), + ("successDetails", _MIDL_XmitDefs_0005), + ("failureDetails", _MIDL_XmitDefs_0007), + ] + + +class _MIDL_XmitDefs_0010(Structure): + _fields_ = [ + ("asyncStatus", ULONG), + ("reserved1", ULONG), + ("uServerCausalityTraceId", UINT64), + ("completionTraceActivity", _GUID), + ("reserved2", ULONG), + ("pOutcomeDetails", POINTER(_MIDL_XmitDefs_0008)), + ] + + +class CONTAINERTHAT(Structure): + _fields_ = [ + ("responseFlags", UINT64), + ("unassignedPassthroughGuid_1", _GUID), + ("unassignedPassthroughGuid_2", _GUID), + ("unassignedPassthroughGuid_3", _GUID), + ("unassignedPassthroughGuid_4", _GUID), + ("reservedGuid_1", _GUID), + ("reservedGuid_2", _GUID), + ("reservedGuid_3", _GUID), + ("reservedGuid_4", _GUID), + ("unassignedPassthroughUint64_1", UINT64), + ("unassignedPassthroughUint64_2", UINT64), + ("unassignedPassthroughUint64_3", UINT64), + ("unassignedPassthroughUint64_4", UINT64), + ("marshalingSetId", UINT64), + ("reservedUint64_2", UINT64), + ("reservedUint64_3", UINT64), + ("reservedUint64_4", UINT64), + ("reservedUint32", UINT), + ("extensions", POINTER(CONTAINER_EXTENT_ARRAY)), + ] + + +class _LOCALTHAT(Structure): + _fields_ = [ + ("marshalingSetId", UINT64), + ("reserved", ULONG), + ("pAsyncResponseBlock", POINTER(_MIDL_XmitDefs_0010)), + ("containerErrorInformation", POINTER(CONTAINER_EXTENT)), + ("containerPassthroughData", POINTER(CONTAINERTHAT)), + ] +LOCALTHAT = _LOCALTHAT + +class _LOCALTHAT32(Structure): + _fields_ = [ + ("marshalingSetId", UINT64), + ("reserved", ULONG), + ("pAsyncResponseBlock", PVOID32), + ("containerErrorInformation", PVOID32), + ("containerPassthroughData", PVOID32), + ] +LOCALTHAT32 = _LOCALTHAT32 + +class tagORPCTHAT(Structure): + _fields_ = [ + ("flags", ULONG), + ("extensions", POINTER(tagORPC_EXTENT_ARRAY)), + ] +ORPCTHAT = tagORPCTHAT + +class ORPCTHAT32(Structure): + _fields_ = [ + ("flags", ULONG), + ("extensions", PVOID32), + ] + + VIRTUAL_DISK_ACCESS_NONE = EnumValue("_VIRTUAL_DISK_ACCESS_MASK", "VIRTUAL_DISK_ACCESS_NONE", 0x0) VIRTUAL_DISK_ACCESS_ATTACH_RO = EnumValue("_VIRTUAL_DISK_ACCESS_MASK", "VIRTUAL_DISK_ACCESS_ATTACH_RO", 0x1) VIRTUAL_DISK_ACCESS_ATTACH_RW = EnumValue("_VIRTUAL_DISK_ACCESS_MASK", "VIRTUAL_DISK_ACCESS_ATTACH_RW", 0x2) @@ -3336,7 +3911,7 @@ class _IMAGEHLP_MODULEW64(Structure): ("LoadedImageName", WCHAR * (256)), ("LoadedPdbName", WCHAR * (256)), ("CVSig", DWORD), - ("CVData", POINTER(WCHAR) * (MAX_PATH * 3)), + ("CVData", WCHAR * (MAX_PATH * 3)), ("PdbSig", DWORD), ("PdbSig70", GUID), ("PdbAge", DWORD), @@ -6109,16 +6684,16 @@ def __repr__(self): return """<{0} ObjectName="{1}">""".format(type(self).__name__, self.ObjectName.contents.str) OBJECT_ATTRIBUTES = _OBJECT_ATTRIBUTES POBJECT_ATTRIBUTES = POINTER(_OBJECT_ATTRIBUTES) -class _TMP_UNION_IO_STATUS_BLOCK(Union): +class _ANON__IO_STATUS_BLOCK_SUB_UNION_1(Union): _fields_ = [ ("Status", NTSTATUS), ("Pointer", PVOID), ] -TMP_UNION_IO_STATUS_BLOCK = _TMP_UNION_IO_STATUS_BLOCK class _IO_STATUS_BLOCK(Structure): + _anonymous_ = ("anon_01",) _fields_ = [ - ("DUMMYUNIONNAME", TMP_UNION_IO_STATUS_BLOCK), + ("anon_01", _ANON__IO_STATUS_BLOCK_SUB_UNION_1), ("Information", ULONG_PTR), ] IO_STATUS_BLOCK = _IO_STATUS_BLOCK @@ -6918,44 +7493,6 @@ class _REMOTE_PORT_VIEW(Structure): PREMOTE_PORT_VIEW = POINTER(_REMOTE_PORT_VIEW) REMOTE_PORT_VIEW = _REMOTE_PORT_VIEW -class tagCOMVERSION(Structure): - _fields_ = [ - ("MajorVersion", USHORT), - ("MinorVersion", USHORT), - ] -COMVERSION = tagCOMVERSION - -class tagORPCTHIS(Structure): - _fields_ = [ - ("version", COMVERSION), - ("flags", ULONG), - ("reserved1", ULONG), - ("cid", GUID), - ("extensions", PVOID), - ] -ORPCTHIS = tagORPCTHIS - -class __MIDL_XmitDefs_0001(Structure): - _fields_ = [ - ("asyncOperationId", GUID), - ("oxidClientProcessNA", ULONG64), - ("originalClientLogicalThreadId", GUID), - ("uClientCausalityTraceId", ULONG64), - ] -MIDL_XmitDefs_0001 = __MIDL_XmitDefs_0001 - -class _LOCALTHIS(Structure): - _fields_ = [ - ("dwFlags", DWORD), - ("dwClientThread", DWORD), - ("passthroughTraceActivity", GUID), - ("callTraceActivity", GUID), - ("asyncRequestBlock", MIDL_XmitDefs_0001), - ("reserved", DWORD), - ("pTouchedAstaArray", PVOID), - ] -LOCALTHIS = _LOCALTHIS - ECS_ENABLED = EnumValue("_EXPCMDSTATE", "ECS_ENABLED", 0x0) ECS_DISABLED = EnumValue("_EXPCMDSTATE", "ECS_DISABLED", 0x1) ECS_HIDDEN = EnumValue("_EXPCMDSTATE", "ECS_HIDDEN", 0x2) diff --git a/windows/native_exec/simple_x86.py b/windows/native_exec/simple_x86.py index 873692fc..29df64d9 100644 --- a/windows/native_exec/simple_x86.py +++ b/windows/native_exec/simple_x86.py @@ -892,16 +892,19 @@ class CmpsB(Instruction): default_32_bits = True encoding = [(RawBits.from_int(8, 0xa6),)] +cmpsw = CmpsB # Allow use in assemble (use Capitalize) : todo cleaner class CmpsW(Instruction): default_32_bits = True encoding = [(RawBits.from_int(16, 0x66A7),)] +Cmpsw = CmpsW # Allow use in assemble (use Capitalize) : todo cleaner class CmpsD(Instruction): default_32_bits = True encoding = [(RawBits.from_int(8, 0xa7),)] +Cmpsd = CmpsD # Allow use in assemble (use Capitalize) : todo cleaner class Nop(Instruction): encoding = [(RawBits.from_int(8, 0x90),)] diff --git a/windows/rpc/client.py b/windows/rpc/client.py index e0e2d582..c8926d90 100644 --- a/windows/rpc/client.py +++ b/windows/rpc/client.py @@ -14,6 +14,8 @@ KNOWN_RPC_ERROR_CODE = gdef.FlagMapper( gdef.ERROR_INVALID_HANDLE, gdef.RPC_X_BAD_STUB_DATA, + gdef.RPC_E_INVALID_HEADER, + gdef.RPC_E_DISCONNECTED, gdef.RPC_S_UNKNOWN_IF, gdef.RPC_S_PROTOCOL_ERROR, gdef.RPC_S_UNSUPPORTED_TRANS_SYN, @@ -57,34 +59,36 @@ class ALPC_RPC_CALL(ctypes.Structure): ("UNK5", gdef.DWORD), ("UNK6", gdef.DWORD), ("UNK7", gdef.DWORD), - ("ORPC_IPID", gdef.GUID) + ("orpc_ipid", gdef.GUID) ] class RPCClient(object): """A client for RPC-over-ALPC able to bind to interface and perform calls using NDR32 marshalling""" REQUEST_IDENTIFIER = 0x11223344 + def __init__(self, port): self.alpc_client = alpc.AlpcClient(port) #: The :class:`windows.alpc.AlpcClient` used to communicate with the server self.number_of_bind_if = 0 # if -> interface self.if_bind_number = {} - def bind(self, IID_str, version=(1,0)): - """Bind to the ``IID_str`` with the given ``version`` + def bind(self, iid, version=(1,0)): + """Bind to the ``IID`` with the given ``version`` :returns: :class:`windows.generated_def.IID` """ - IID = windows.com.IID.from_string(IID_str) - request = self._forge_bind_request(IID, version, self.number_of_bind_if) + if not isinstance(iid, gdef.GUID): + iid = windows.com.IID.from_string(iid) + request = self._forge_bind_request(iid, version, self.number_of_bind_if) response = self._send_request(request) # Parse reponse request_type = self._get_request_type(response) if request_type != gdef.RPC_RESPONSE_TYPE_BIND_OK: raise ValueError("Unexpected reponse type. Expected RESPONSE_TYPE_BIND_OK got {0}".format(KNOW_RESPONSE_TYPE[request_type])) - iid_hash = hash(buffer(IID)[:]) # TODO: add __hash__ to IID + iid_hash = hash(buffer(iid)[:]) # TODO: add __hash__ to IID self.if_bind_number[iid_hash] = self.number_of_bind_if self.number_of_bind_if += 1 #TODO: attach version information to IID - return IID + return iid def forge_alpc_request(self, IID, method_offset, params, ipid=None): """Craft an ALPC message containing an RPC request to call ``method_offset`` of interface ``IID` @@ -113,18 +117,17 @@ def call(self, IID, method_offset, params, ipid=None): request_type = self._get_request_type(response) if request_type != gdef.RPC_RESPONSE_TYPE_SUCCESS: raise ValueError("Unexpected reponse type. Expected RESPONSE_SUCCESS got {0}".format(KNOW_RESPONSE_TYPE[request_type])) - + return self._get_response_effective_data(response) # windows.utils.sprint(ALPC_RPC_CALL.from_buffer_copy(response + "\x00" * 12)) - data = struct.unpack("<6I", response[:6 * 4]) - assert data[3] == self.REQUEST_IDENTIFIER - return response[4 * 6:] # Should be the return value (not completly verified) + # data = struct.unpack("<6I", response[:6 * 4]) + # assert data[3] == self.REQUEST_IDENTIFIER + # return response[4 * 6:] # Should be the return value (not completly verified) def _send_request(self, request): - response = self.alpc_client.send_receive(request) - return response.data + return self.alpc_client.send_receive(request) def _forge_call_request(self, interface_nb, method_offset, params, ipid=None): - # TODO: differents REQUEST_IDENTIFIER for each req ? + # TODO: differents REQUEST_IDENTIFIER for each req ? Use REQUEST_IDENTIFIER to identify ORPC calls ? # TODO: what is this '0' ? (1 is also accepted) (flags ?) # request = struct.pack("<16I", gdef.RPC_REQUEST_TYPE_CALL, NOT_USED, 1, self.REQUEST_IDENTIFIER, interface_nb, method_offset, *[NOT_USED] * 10) req = ALPC_RPC_CALL() @@ -134,16 +137,24 @@ def _forge_call_request(self, interface_nb, method_offset, params, ipid=None): req.if_nb = interface_nb req.method_offset = method_offset if ipid: - req.ORPC_IPID = ipid - this = gdef.ORPCTHIS() + req.flags = 1 # We have a IPID + req.orpc_ipid = ipid + this = gdef.ORPCTHIS32() # we use NDR32 this.version = (5,7) - this.flags = 1 - lthis = gdef.LOCALTHIS() + this.flags = gdef.ORPCF_LOCAL + # Not mandatory + # this.cid = gdef.GUID.from_string("42424242-4242-4242-4242-424242424242") + lthis = gdef.LOCALTHIS32() # we use NDR32 + # RPC_E_INVALID_HEADER is NULL + lthis.callTraceActivity = gdef.GUID.from_string("42424242-4242-4242-4242-424242424242") + lthis.dwClientThread = windows.current_thread.tid return buffer(req)[:] + buffer(this)[:] + buffer(lthis)[:] + params return buffer(req)[:] + params def _forge_call_request_in_view(self, interface_nb, method_offset, params, ipid=None): # Version crade qui clean rien pour POC. GROS DOUTES :D + if ipid: + raise NotImplementedError("RpcClient._forge_call_request_in_view() with ipid") raw_request = self._forge_call_request(interface_nb, method_offset, b"") p = windows.alpc.AlpcMessage(0x2000) section = self.alpc_client.create_port_section(0x40000, 0, len(params)) @@ -171,9 +182,22 @@ def _forge_bind_request(self, uuid, syntaxversion, requested_if_nb): return buffer(req)[:] def _get_request_type(self, response): + """Response is a `AlpcMessage`""" "raise if request_type == RESPONSE_TYPE_FAIL" - request_type = struct.unpack("= 0x48 # At least 0x20 of data + rpcdatasize = struct.unpack("= rpcdatasize + return windows.current_process.read_memory(viewattr.ViewBase, rpcdatasize) \ No newline at end of file diff --git a/windows/rpc/ndr.py b/windows/rpc/ndr.py index 2643fda2..ebf8c81c 100644 --- a/windows/rpc/ndr.py +++ b/windows/rpc/ndr.py @@ -554,6 +554,7 @@ class NdrStream(object): def __init__(self, data): self.fulldata = data self.data = data + # self.data = memoryview(data) # FAST but need some code rewrite at some places def partial_unpack(self, format): size = struct.calcsize(format) diff --git a/windows/security.py b/windows/security.py index ced6d224..09ef68e4 100644 --- a/windows/security.py +++ b/windows/security.py @@ -175,11 +175,11 @@ ) COM_ACCESS_RIGHT = gdef.FlagMapper( - gdef.COM_EXECUTE, - gdef.COM_EXECUTE_LOCAL, - gdef.COM_EXECUTE_REMOTE, - gdef.COM_ACTIVATE_LOCAL, - gdef.COM_ACTIVATE_REMOTE, + gdef.COM_RIGHTS_EXECUTE, + gdef.COM_RIGHTS_EXECUTE_LOCAL, + gdef.COM_RIGHTS_EXECUTE_REMOTE, + gdef.COM_RIGHTS_ACTIVATE_LOCAL, + gdef.COM_RIGHTS_ACTIVATE_REMOTE, ) SERVICE_ACCESS_RIGHT = gdef.FlagMapper( @@ -206,7 +206,6 @@ gdef.ADS_RIGHT_DS_CONTROL_ACCESS, ) - SPECIFIC_ACCESS_RIGTH_BY_TYPE = { None: gdef.FlagMapper(), "file": FILE_ACCESS_RIGHT, @@ -218,6 +217,7 @@ "callback": CALLBACK_ACCESS_RIGHT, "mutant": MUTANT_ACCESS_RIGHT, "event": EVENT_ACCESS_RIGHT, + "section": SECTION_ACCESS_RIGHT, "semaphore": SEMAPHORE_ACCESS_RIGHT, "io_completion": IO_COMPLETION_ACCESS_RIGHT, "port": PORT_ACCESS_RIGHT, diff --git a/windows/winproxy/apis/dbghelp.py b/windows/winproxy/apis/dbghelp.py index 09fa558c..77d556e7 100644 --- a/windows/winproxy/apis/dbghelp.py +++ b/windows/winproxy/apis/dbghelp.py @@ -133,6 +133,10 @@ def SymEnumTypes(hProcess, BaseOfDll, EnumSymbolsCallback, UserContext=None): UserContext = transform_pyobject_to_pvoid(UserContext) return SymEnumTypes.ctypes_function(hProcess, BaseOfDll, EnumSymbolsCallback, UserContext) +@DbgHelpProxy() +def SymEnumTypesW(hProcess, BaseOfDll, EnumSymbolsCallback, UserContext=None): + return SymEnumTypesW.ctypes_function(hProcess, BaseOfDll, EnumSymbolsCallback, UserContext) + @DbgHelpProxy() def SymEnumTypesByName(hProcess, BaseOfDll, mask, EnumSymbolsCallback, UserContext=None): UserContext = transform_pyobject_to_pvoid(UserContext) diff --git a/windows/winproxy/apis/ole32.py b/windows/winproxy/apis/ole32.py index 2d490cbd..96c70e7b 100644 --- a/windows/winproxy/apis/ole32.py +++ b/windows/winproxy/apis/ole32.py @@ -46,4 +46,20 @@ def CLSIDFromProgID(lpszProgID, lpclsid): @Ole32Proxy() def CoTaskMemFree(pv): - return CoTaskMemFree.ctypes_function(pv) \ No newline at end of file + return CoTaskMemFree.ctypes_function(pv) + +@Ole32Proxy() +def CreateStreamOnHGlobal(hGlobal=None, fDeleteOnRelease=True, ppstm=NeededParameter): + return CreateStreamOnHGlobal.ctypes_function(hGlobal, fDeleteOnRelease, ppstm) + +@Ole32Proxy() +def GetHGlobalFromStream(pstm, phglobal): + return GetHGlobalFromStream.ctypes_function(pstm, phglobal) + +@Ole32Proxy() +def CoMarshalInterface(pStm, riid, pUnk, dwDestContext, pvDestContext, mshlflags): + return CoMarshalInterface.ctypes_function(pStm, riid, pUnk, dwDestContext, pvDestContext, mshlflags) + +@Ole32Proxy() +def CoUnmarshalInterface(pStm, riid, ppv): + return CoUnmarshalInterface.ctypes_function(pStm, riid, ppv) \ No newline at end of file