mirror of
https://github.com/hakril/PythonForWindows
synced 2026-06-08 14:31:45 +00:00
Cleaning/working on windows.com API
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
typedef struct IEnumWbemClassObjectVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in IEnumWbemClassObject * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in IEnumWbemClassObject * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in IEnumWbemClassObject * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Reset )(
|
||||
__RPC__in IEnumWbemClassObject * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Next )(
|
||||
__RPC__in IEnumWbemClassObject * This,
|
||||
/* [in] */ long lTimeout,
|
||||
/* [in] */ ULONG uCount,
|
||||
/* [length_is][size_is][out] */ __RPC__out_ecount_part(uCount, *puReturned) IWbemClassObject **apObjects,
|
||||
/* [out] */ __RPC__out ULONG *puReturned);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *NextAsync )(
|
||||
__RPC__in IEnumWbemClassObject * This,
|
||||
/* [in] */ ULONG uCount,
|
||||
/* [in] */ __RPC__in_opt IWbemObjectSink *pSink);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Clone )(
|
||||
__RPC__in IEnumWbemClassObject * This,
|
||||
/* [out] */ __RPC__deref_out_opt IEnumWbemClassObject **ppEnum);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Skip )(
|
||||
__RPC__in IEnumWbemClassObject * This,
|
||||
/* [in] */ long lTimeout,
|
||||
/* [in] */ ULONG nCount);
|
||||
|
||||
END_INTERFACE
|
||||
} IEnumWbemClassObjectVtbl;
|
||||
@@ -0,0 +1,153 @@
|
||||
typedef struct INetFwPolicy2Vtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
INetFwPolicy2 * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
INetFwPolicy2 * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
INetFwPolicy2 * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
|
||||
INetFwPolicy2 * This,
|
||||
/* [out] */ UINT *pctinfo);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
|
||||
INetFwPolicy2 * This,
|
||||
/* [in] */ UINT iTInfo,
|
||||
/* [in] */ LCID lcid,
|
||||
/* [out] */ ITypeInfo **ppTInfo);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
|
||||
INetFwPolicy2 * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [size_is][in] */ LPOLESTR *rgszNames,
|
||||
/* [range][in] */ UINT cNames,
|
||||
/* [in] */ LCID lcid,
|
||||
/* [size_is][out] */ DISPID *rgDispId);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
|
||||
INetFwPolicy2 * This,
|
||||
/* [in] */ DISPID dispIdMember,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [in] */ LCID lcid,
|
||||
/* [in] */ WORD wFlags,
|
||||
/* [out][in] */ DISPPARAMS *pDispParams,
|
||||
/* [out] */ VARIANT *pVarResult,
|
||||
/* [out] */ EXCEPINFO *pExcepInfo,
|
||||
/* [out] */ UINT *puArgErr);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_CurrentProfileTypes )(
|
||||
INetFwPolicy2 * This,
|
||||
/* [retval][out] */ long *profileTypesBitmask);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_FirewallEnabled )(
|
||||
INetFwPolicy2 * This,
|
||||
/* [in] */ NET_FW_PROFILE_TYPE2 profileType,
|
||||
/* [retval][out] */ VARIANT_BOOL *enabled);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_FirewallEnabled )(
|
||||
INetFwPolicy2 * This,
|
||||
/* [in] */ NET_FW_PROFILE_TYPE2 profileType,
|
||||
/* [in] */ VARIANT_BOOL enabled);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ExcludedInterfaces )(
|
||||
INetFwPolicy2 * This,
|
||||
/* [in] */ NET_FW_PROFILE_TYPE2 profileType,
|
||||
/* [retval][out] */ VARIANT *interfaces);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ExcludedInterfaces )(
|
||||
INetFwPolicy2 * This,
|
||||
/* [in] */ NET_FW_PROFILE_TYPE2 profileType,
|
||||
/* [in] */ VARIANT interfaces);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_BlockAllInboundTraffic )(
|
||||
INetFwPolicy2 * This,
|
||||
/* [in] */ NET_FW_PROFILE_TYPE2 profileType,
|
||||
/* [retval][out] */ VARIANT_BOOL *Block);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_BlockAllInboundTraffic )(
|
||||
INetFwPolicy2 * This,
|
||||
/* [in] */ NET_FW_PROFILE_TYPE2 profileType,
|
||||
/* [in] */ VARIANT_BOOL Block);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_NotificationsDisabled )(
|
||||
INetFwPolicy2 * This,
|
||||
/* [in] */ NET_FW_PROFILE_TYPE2 profileType,
|
||||
/* [retval][out] */ VARIANT_BOOL *disabled);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_NotificationsDisabled )(
|
||||
INetFwPolicy2 * This,
|
||||
/* [in] */ NET_FW_PROFILE_TYPE2 profileType,
|
||||
/* [in] */ VARIANT_BOOL disabled);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_UnicastResponsesToMulticastBroadcastDisabled )(
|
||||
INetFwPolicy2 * This,
|
||||
/* [in] */ NET_FW_PROFILE_TYPE2 profileType,
|
||||
/* [retval][out] */ VARIANT_BOOL *disabled);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_UnicastResponsesToMulticastBroadcastDisabled )(
|
||||
INetFwPolicy2 * This,
|
||||
/* [in] */ NET_FW_PROFILE_TYPE2 profileType,
|
||||
/* [in] */ VARIANT_BOOL disabled);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Rules )(
|
||||
INetFwPolicy2 * This,
|
||||
/* [retval][out] */ INetFwRules **rules);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ServiceRestriction )(
|
||||
INetFwPolicy2 * This,
|
||||
/* [retval][out] */ INetFwServiceRestriction **ServiceRestriction);
|
||||
|
||||
/* [id] */ HRESULT ( STDMETHODCALLTYPE *EnableRuleGroup )(
|
||||
INetFwPolicy2 * This,
|
||||
/* [in] */ long profileTypesBitmask,
|
||||
/* [in] */ BSTR group,
|
||||
/* [in] */ VARIANT_BOOL enable);
|
||||
|
||||
/* [id] */ HRESULT ( STDMETHODCALLTYPE *IsRuleGroupEnabled )(
|
||||
INetFwPolicy2 * This,
|
||||
/* [in] */ long profileTypesBitmask,
|
||||
/* [in] */ BSTR group,
|
||||
/* [retval][out] */ VARIANT_BOOL *enabled);
|
||||
|
||||
/* [id] */ HRESULT ( STDMETHODCALLTYPE *RestoreLocalFirewallDefaults )(
|
||||
INetFwPolicy2 * This);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DefaultInboundAction )(
|
||||
INetFwPolicy2 * This,
|
||||
/* [in] */ NET_FW_PROFILE_TYPE2 profileType,
|
||||
/* [retval][out] */ NET_FW_ACTION *action);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DefaultInboundAction )(
|
||||
INetFwPolicy2 * This,
|
||||
/* [in] */ NET_FW_PROFILE_TYPE2 profileType,
|
||||
/* [in] */ NET_FW_ACTION action);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_DefaultOutboundAction )(
|
||||
INetFwPolicy2 * This,
|
||||
/* [in] */ NET_FW_PROFILE_TYPE2 profileType,
|
||||
/* [retval][out] */ NET_FW_ACTION *action);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_DefaultOutboundAction )(
|
||||
INetFwPolicy2 * This,
|
||||
/* [in] */ NET_FW_PROFILE_TYPE2 profileType,
|
||||
/* [in] */ NET_FW_ACTION action);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_IsRuleGroupCurrentlyEnabled )(
|
||||
INetFwPolicy2 * This,
|
||||
/* [in] */ BSTR group,
|
||||
/* [retval][out] */ VARIANT_BOOL *enabled);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_LocalPolicyModifyState )(
|
||||
INetFwPolicy2 * This,
|
||||
/* [retval][out] */ NET_FW_MODIFY_STATE *modifyState);
|
||||
|
||||
END_INTERFACE
|
||||
} INetFwPolicy2Vtbl;
|
||||
@@ -0,0 +1,191 @@
|
||||
typedef struct INetFwRuleVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
INetFwRule * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
INetFwRule * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
INetFwRule * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
|
||||
INetFwRule * This,
|
||||
/* [out] */ UINT *pctinfo);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
|
||||
INetFwRule * This,
|
||||
/* [in] */ UINT iTInfo,
|
||||
/* [in] */ LCID lcid,
|
||||
/* [out] */ ITypeInfo **ppTInfo);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
|
||||
INetFwRule * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [size_is][in] */ LPOLESTR *rgszNames,
|
||||
/* [range][in] */ UINT cNames,
|
||||
/* [in] */ LCID lcid,
|
||||
/* [size_is][out] */ DISPID *rgDispId);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
|
||||
INetFwRule * This,
|
||||
/* [in] */ DISPID dispIdMember,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [in] */ LCID lcid,
|
||||
/* [in] */ WORD wFlags,
|
||||
/* [out][in] */ DISPPARAMS *pDispParams,
|
||||
/* [out] */ VARIANT *pVarResult,
|
||||
/* [out] */ EXCEPINFO *pExcepInfo,
|
||||
/* [out] */ UINT *puArgErr);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Name )(
|
||||
INetFwRule * This,
|
||||
/* [retval][out] */ BSTR *name);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Name )(
|
||||
INetFwRule * This,
|
||||
/* [in] */ BSTR name);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Description )(
|
||||
INetFwRule * This,
|
||||
/* [retval][out] */ BSTR *desc);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Description )(
|
||||
INetFwRule * This,
|
||||
/* [in] */ BSTR desc);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ApplicationName )(
|
||||
INetFwRule * This,
|
||||
/* [retval][out] */ BSTR *imageFileName);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ApplicationName )(
|
||||
INetFwRule * This,
|
||||
/* [in] */ BSTR imageFileName);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_ServiceName )(
|
||||
INetFwRule * This,
|
||||
/* [retval][out] */ BSTR *serviceName);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_ServiceName )(
|
||||
INetFwRule * This,
|
||||
/* [in] */ BSTR serviceName);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Protocol )(
|
||||
INetFwRule * This,
|
||||
/* [retval][out] */ LONG *protocol);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Protocol )(
|
||||
INetFwRule * This,
|
||||
/* [in] */ LONG protocol);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_LocalPorts )(
|
||||
INetFwRule * This,
|
||||
/* [retval][out] */ BSTR *portNumbers);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_LocalPorts )(
|
||||
INetFwRule * This,
|
||||
/* [in] */ BSTR portNumbers);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RemotePorts )(
|
||||
INetFwRule * This,
|
||||
/* [retval][out] */ BSTR *portNumbers);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RemotePorts )(
|
||||
INetFwRule * This,
|
||||
/* [in] */ BSTR portNumbers);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_LocalAddresses )(
|
||||
INetFwRule * This,
|
||||
/* [retval][out] */ BSTR *localAddrs);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_LocalAddresses )(
|
||||
INetFwRule * This,
|
||||
/* [in] */ BSTR localAddrs);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_RemoteAddresses )(
|
||||
INetFwRule * This,
|
||||
/* [retval][out] */ BSTR *remoteAddrs);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_RemoteAddresses )(
|
||||
INetFwRule * This,
|
||||
/* [in] */ BSTR remoteAddrs);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_IcmpTypesAndCodes )(
|
||||
INetFwRule * This,
|
||||
/* [retval][out] */ BSTR *icmpTypesAndCodes);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_IcmpTypesAndCodes )(
|
||||
INetFwRule * This,
|
||||
/* [in] */ BSTR icmpTypesAndCodes);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Direction )(
|
||||
INetFwRule * This,
|
||||
/* [retval][out] */ NET_FW_RULE_DIRECTION *dir);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Direction )(
|
||||
INetFwRule * This,
|
||||
/* [in] */ NET_FW_RULE_DIRECTION dir);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Interfaces )(
|
||||
INetFwRule * This,
|
||||
/* [retval][out] */ VARIANT *interfaces);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Interfaces )(
|
||||
INetFwRule * This,
|
||||
/* [in] */ VARIANT interfaces);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_InterfaceTypes )(
|
||||
INetFwRule * This,
|
||||
/* [retval][out] */ BSTR *interfaceTypes);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_InterfaceTypes )(
|
||||
INetFwRule * This,
|
||||
/* [in] */ BSTR interfaceTypes);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Enabled )(
|
||||
INetFwRule * This,
|
||||
/* [retval][out] */ VARIANT_BOOL *enabled);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Enabled )(
|
||||
INetFwRule * This,
|
||||
/* [in] */ VARIANT_BOOL enabled);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Grouping )(
|
||||
INetFwRule * This,
|
||||
/* [retval][out] */ BSTR *context);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Grouping )(
|
||||
INetFwRule * This,
|
||||
/* [in] */ BSTR context);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Profiles )(
|
||||
INetFwRule * This,
|
||||
/* [retval][out] */ long *profileTypesBitmask);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Profiles )(
|
||||
INetFwRule * This,
|
||||
/* [in] */ long profileTypesBitmask);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_EdgeTraversal )(
|
||||
INetFwRule * This,
|
||||
/* [retval][out] */ VARIANT_BOOL *enabled);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_EdgeTraversal )(
|
||||
INetFwRule * This,
|
||||
/* [in] */ VARIANT_BOOL enabled);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Action )(
|
||||
INetFwRule * This,
|
||||
/* [retval][out] */ NET_FW_ACTION *action);
|
||||
|
||||
/* [propput][id] */ HRESULT ( STDMETHODCALLTYPE *put_Action )(
|
||||
INetFwRule * This,
|
||||
/* [in] */ NET_FW_ACTION action);
|
||||
|
||||
END_INTERFACE
|
||||
} INetFwRuleVtbl;
|
||||
@@ -0,0 +1,68 @@
|
||||
typedef struct INetFwRulesVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
INetFwRules * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
INetFwRules * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
INetFwRules * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
|
||||
INetFwRules * This,
|
||||
/* [out] */ UINT *pctinfo);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
|
||||
INetFwRules * This,
|
||||
/* [in] */ UINT iTInfo,
|
||||
/* [in] */ LCID lcid,
|
||||
/* [out] */ ITypeInfo **ppTInfo);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
|
||||
INetFwRules * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [size_is][in] */ LPOLESTR *rgszNames,
|
||||
/* [range][in] */ UINT cNames,
|
||||
/* [in] */ LCID lcid,
|
||||
/* [size_is][out] */ DISPID *rgDispId);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
|
||||
INetFwRules * This,
|
||||
/* [in] */ DISPID dispIdMember,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [in] */ LCID lcid,
|
||||
/* [in] */ WORD wFlags,
|
||||
/* [out][in] */ DISPPARAMS *pDispParams,
|
||||
/* [out] */ VARIANT *pVarResult,
|
||||
/* [out] */ EXCEPINFO *pExcepInfo,
|
||||
/* [out] */ UINT *puArgErr);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Count )(
|
||||
INetFwRules * This,
|
||||
/* [retval][out] */ long *count);
|
||||
|
||||
/* [id] */ HRESULT ( STDMETHODCALLTYPE *Add )(
|
||||
INetFwRules * This,
|
||||
/* [in] */ INetFwRule *rule);
|
||||
|
||||
/* [id] */ HRESULT ( STDMETHODCALLTYPE *Remove )(
|
||||
INetFwRules * This,
|
||||
/* [in] */ BSTR name);
|
||||
|
||||
/* [id] */ HRESULT ( STDMETHODCALLTYPE *Item )(
|
||||
INetFwRules * This,
|
||||
/* [in] */ BSTR name,
|
||||
/* [retval][out] */ INetFwRule **rule);
|
||||
|
||||
/* [restricted][propget][id] */ HRESULT ( STDMETHODCALLTYPE *get__NewEnum )(
|
||||
INetFwRules * This,
|
||||
/* [retval][out] */ IUnknown **newEnum);
|
||||
|
||||
END_INTERFACE
|
||||
} INetFwRulesVtbl;
|
||||
@@ -0,0 +1,64 @@
|
||||
typedef struct INetFwServiceRestrictionVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
INetFwServiceRestriction * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
INetFwServiceRestriction * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
INetFwServiceRestriction * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
|
||||
INetFwServiceRestriction * This,
|
||||
/* [out] */ UINT *pctinfo);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
|
||||
INetFwServiceRestriction * This,
|
||||
/* [in] */ UINT iTInfo,
|
||||
/* [in] */ LCID lcid,
|
||||
/* [out] */ ITypeInfo **ppTInfo);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
|
||||
INetFwServiceRestriction * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [size_is][in] */ LPOLESTR *rgszNames,
|
||||
/* [range][in] */ UINT cNames,
|
||||
/* [in] */ LCID lcid,
|
||||
/* [size_is][out] */ DISPID *rgDispId);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
|
||||
INetFwServiceRestriction * This,
|
||||
/* [in] */ DISPID dispIdMember,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [in] */ LCID lcid,
|
||||
/* [in] */ WORD wFlags,
|
||||
/* [out][in] */ DISPPARAMS *pDispParams,
|
||||
/* [out] */ VARIANT *pVarResult,
|
||||
/* [out] */ EXCEPINFO *pExcepInfo,
|
||||
/* [out] */ UINT *puArgErr);
|
||||
|
||||
/* [id] */ HRESULT ( STDMETHODCALLTYPE *RestrictService )(
|
||||
INetFwServiceRestriction * This,
|
||||
/* [in] */ BSTR serviceName,
|
||||
/* [in] */ BSTR appName,
|
||||
/* [in] */ VARIANT_BOOL restrictService,
|
||||
/* [in] */ VARIANT_BOOL serviceSidRestricted);
|
||||
|
||||
/* [id] */ HRESULT ( STDMETHODCALLTYPE *ServiceRestricted )(
|
||||
INetFwServiceRestriction * This,
|
||||
/* [in] */ BSTR serviceName,
|
||||
/* [in] */ BSTR appName,
|
||||
/* [retval][out] */ VARIANT_BOOL *serviceRestricted);
|
||||
|
||||
/* [propget][id] */ HRESULT ( STDMETHODCALLTYPE *get_Rules )(
|
||||
INetFwServiceRestriction * This,
|
||||
/* [retval][out] */ INetFwRules **rules);
|
||||
|
||||
END_INTERFACE
|
||||
} INetFwServiceRestrictionVtbl;
|
||||
@@ -0,0 +1,18 @@
|
||||
typedef struct IUnknownVtbl
|
||||
{
|
||||
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
|
||||
} IUnknownVtbl;
|
||||
@@ -0,0 +1,38 @@
|
||||
typedef struct IWbemCallResultVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in IWbemCallResult * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in IWbemCallResult * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in IWbemCallResult * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetResultObject )(
|
||||
__RPC__in IWbemCallResult * This,
|
||||
/* [in] */ long lTimeout,
|
||||
/* [out] */ __RPC__deref_out_opt IWbemClassObject **ppResultObject);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetResultString )(
|
||||
__RPC__in IWbemCallResult * This,
|
||||
/* [in] */ long lTimeout,
|
||||
/* [out] */ __RPC__deref_out_opt BSTR *pstrResultString);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetResultServices )(
|
||||
__RPC__in IWbemCallResult * This,
|
||||
/* [in] */ long lTimeout,
|
||||
/* [out] */ __RPC__deref_out_opt IWbemServices **ppServices);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetCallStatus )(
|
||||
__RPC__in IWbemCallResult * This,
|
||||
/* [in] */ long lTimeout,
|
||||
/* [out] */ __RPC__out long *plStatus);
|
||||
|
||||
END_INTERFACE
|
||||
} IWbemCallResultVtbl;
|
||||
@@ -0,0 +1,143 @@
|
||||
typedef struct IWbemClassObjectVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IWbemClassObject * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IWbemClassObject * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IWbemClassObject * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetQualifierSet )(
|
||||
IWbemClassObject * This,
|
||||
/* [out] */ IWbemQualifierSet **ppQualSet);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Get )(
|
||||
IWbemClassObject * This,
|
||||
/* [string][in] */ LPCWSTR wszName,
|
||||
/* [in] */ long lFlags,
|
||||
/* [unique][in][out] */ VARIANT *pVal,
|
||||
/* [unique][in][out] */ CIMTYPE *pType,
|
||||
/* [unique][in][out] */ long *plFlavor);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Put )(
|
||||
IWbemClassObject * This,
|
||||
/* [string][in] */ LPCWSTR wszName,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ VARIANT *pVal,
|
||||
/* [in] */ CIMTYPE Type);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Delete )(
|
||||
IWbemClassObject * This,
|
||||
/* [string][in] */ LPCWSTR wszName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetNames )(
|
||||
IWbemClassObject * This,
|
||||
/* [string][in] */ LPCWSTR wszQualifierName,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ VARIANT *pQualifierVal,
|
||||
/* [out] */ SAFEARRAY * *pNames);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *BeginEnumeration )(
|
||||
IWbemClassObject * This,
|
||||
/* [in] */ long lEnumFlags);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Next )(
|
||||
IWbemClassObject * This,
|
||||
/* [in] */ long lFlags,
|
||||
/* [unique][in][out] */ BSTR *strName,
|
||||
/* [unique][in][out] */ VARIANT *pVal,
|
||||
/* [unique][in][out] */ CIMTYPE *pType,
|
||||
/* [unique][in][out] */ long *plFlavor);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *EndEnumeration )(
|
||||
IWbemClassObject * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetPropertyQualifierSet )(
|
||||
IWbemClassObject * This,
|
||||
/* [string][in] */ LPCWSTR wszProperty,
|
||||
/* [out] */ IWbemQualifierSet **ppQualSet);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Clone )(
|
||||
IWbemClassObject * This,
|
||||
/* [out] */ IWbemClassObject **ppCopy);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetObjectText )(
|
||||
IWbemClassObject * This,
|
||||
/* [in] */ long lFlags,
|
||||
/* [out] */ BSTR *pstrObjectText);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SpawnDerivedClass )(
|
||||
IWbemClassObject * This,
|
||||
/* [in] */ long lFlags,
|
||||
/* [out] */ IWbemClassObject **ppNewClass);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SpawnInstance )(
|
||||
IWbemClassObject * This,
|
||||
/* [in] */ long lFlags,
|
||||
/* [out] */ IWbemClassObject **ppNewInstance);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *CompareTo )(
|
||||
IWbemClassObject * This,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ IWbemClassObject *pCompareTo);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetPropertyOrigin )(
|
||||
IWbemClassObject * This,
|
||||
/* [string][in] */ LPCWSTR wszName,
|
||||
/* [out] */ BSTR *pstrClassName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *InheritsFrom )(
|
||||
IWbemClassObject * This,
|
||||
/* [in] */ LPCWSTR strAncestor);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetMethod )(
|
||||
IWbemClassObject * This,
|
||||
/* [string][in] */ LPCWSTR wszName,
|
||||
/* [in] */ long lFlags,
|
||||
/* [out] */ IWbemClassObject **ppInSignature,
|
||||
/* [out] */ IWbemClassObject **ppOutSignature);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *PutMethod )(
|
||||
IWbemClassObject * This,
|
||||
/* [string][in] */ LPCWSTR wszName,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ IWbemClassObject *pInSignature,
|
||||
/* [in] */ IWbemClassObject *pOutSignature);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *DeleteMethod )(
|
||||
IWbemClassObject * This,
|
||||
/* [string][in] */ LPCWSTR wszName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *BeginMethodEnumeration )(
|
||||
IWbemClassObject * This,
|
||||
/* [in] */ long lEnumFlags);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *NextMethod )(
|
||||
IWbemClassObject * This,
|
||||
/* [in] */ long lFlags,
|
||||
/* [unique][in][out] */ BSTR *pstrName,
|
||||
/* [unique][in][out] */ IWbemClassObject **ppInSignature,
|
||||
/* [unique][in][out] */ IWbemClassObject **ppOutSignature);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *EndMethodEnumeration )(
|
||||
IWbemClassObject * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetMethodQualifierSet )(
|
||||
IWbemClassObject * This,
|
||||
/* [string][in] */ LPCWSTR wszMethod,
|
||||
/* [out] */ IWbemQualifierSet **ppQualSet);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetMethodOrigin )(
|
||||
IWbemClassObject * This,
|
||||
/* [string][in] */ LPCWSTR wszMethodName,
|
||||
/* [out] */ BSTR *pstrClassName);
|
||||
|
||||
END_INTERFACE
|
||||
} IWbemClassObjectVtbl;
|
||||
@@ -0,0 +1,60 @@
|
||||
typedef struct IWbemContextVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IWbemContext * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IWbemContext * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IWbemContext * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Clone )(
|
||||
IWbemContext * This,
|
||||
/* [out] */ IWbemContext **ppNewCopy);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetNames )(
|
||||
IWbemContext * This,
|
||||
/* [in] */ long lFlags,
|
||||
/* [out] */ SAFEARRAY * *pNames);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *BeginEnumeration )(
|
||||
IWbemContext * This,
|
||||
/* [in] */ long lFlags);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Next )(
|
||||
IWbemContext * This,
|
||||
/* [in] */ long lFlags,
|
||||
/* [out] */ BSTR *pstrName,
|
||||
/* [out] */ VARIANT *pValue);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *EndEnumeration )(
|
||||
IWbemContext * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetValue )(
|
||||
IWbemContext * This,
|
||||
/* [string][in] */ LPCWSTR wszName,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ VARIANT *pValue);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetValue )(
|
||||
IWbemContext * This,
|
||||
/* [string][in] */ LPCWSTR wszName,
|
||||
/* [in] */ long lFlags,
|
||||
/* [out] */ VARIANT *pValue);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *DeleteValue )(
|
||||
IWbemContext * This,
|
||||
/* [string][in] */ LPCWSTR wszName,
|
||||
/* [in] */ long lFlags);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *DeleteAll )(
|
||||
IWbemContext * This);
|
||||
|
||||
END_INTERFACE
|
||||
} IWbemContextVtbl;
|
||||
@@ -0,0 +1,29 @@
|
||||
typedef struct IWbemLocatorVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IWbemLocator * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IWbemLocator * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IWbemLocator * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *ConnectServer )(
|
||||
IWbemLocator * This,
|
||||
/* [in] */ const BSTR strNetworkResource,
|
||||
/* [in] */ const BSTR strUser,
|
||||
/* [in] */ const BSTR strPassword,
|
||||
/* [in] */ const BSTR strLocale,
|
||||
/* [in] */ long lSecurityFlags,
|
||||
/* [in] */ const BSTR strAuthority,
|
||||
/* [in] */ IWbemContext *pCtx,
|
||||
/* [out] */ IWbemServices **ppNamespace);
|
||||
|
||||
END_INTERFACE
|
||||
} IWbemLocatorVtbl;
|
||||
@@ -0,0 +1,30 @@
|
||||
typedef struct IWbemObjectSinkVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in IWbemObjectSink * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in IWbemObjectSink * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in IWbemObjectSink * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Indicate )(
|
||||
__RPC__in IWbemObjectSink * This,
|
||||
/* [in] */ long lObjectCount,
|
||||
/* [size_is][in] */ __RPC__in_ecount_full(lObjectCount) IWbemClassObject **apObjArray);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetStatus )(
|
||||
__RPC__in IWbemObjectSink * This,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ HRESULT hResult,
|
||||
/* [unique][in] */ __RPC__in_opt BSTR strParam,
|
||||
/* [unique][in] */ __RPC__in_opt IWbemClassObject *pObjParam);
|
||||
|
||||
END_INTERFACE
|
||||
} IWbemObjectSinkVtbl;
|
||||
@@ -0,0 +1,54 @@
|
||||
typedef struct IWbemQualifierSetVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IWbemQualifierSet * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IWbemQualifierSet * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IWbemQualifierSet * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Get )(
|
||||
IWbemQualifierSet * This,
|
||||
/* [string][in] */ LPCWSTR wszName,
|
||||
/* [in] */ long lFlags,
|
||||
/* [unique][in][out] */ VARIANT *pVal,
|
||||
/* [unique][in][out] */ long *plFlavor);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Put )(
|
||||
IWbemQualifierSet * This,
|
||||
/* [string][in] */ LPCWSTR wszName,
|
||||
/* [in] */ VARIANT *pVal,
|
||||
/* [in] */ long lFlavor);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Delete )(
|
||||
IWbemQualifierSet * This,
|
||||
/* [string][in] */ LPCWSTR wszName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetNames )(
|
||||
IWbemQualifierSet * This,
|
||||
/* [in] */ long lFlags,
|
||||
/* [out] */ SAFEARRAY * *pNames);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *BeginEnumeration )(
|
||||
IWbemQualifierSet * This,
|
||||
/* [in] */ long lFlags);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Next )(
|
||||
IWbemQualifierSet * This,
|
||||
/* [in] */ long lFlags,
|
||||
/* [unique][in][out] */ BSTR *pstrName,
|
||||
/* [unique][in][out] */ VARIANT *pVal,
|
||||
/* [unique][in][out] */ long *plFlavor);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *EndEnumeration )(
|
||||
IWbemQualifierSet * This);
|
||||
|
||||
END_INTERFACE
|
||||
} IWbemQualifierSetVtbl;
|
||||
@@ -0,0 +1,185 @@
|
||||
typedef struct IWbemServicesVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
__RPC__in IWbemServices * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [annotation][iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
__RPC__in IWbemServices * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
__RPC__in IWbemServices * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *OpenNamespace )(
|
||||
__RPC__in IWbemServices * This,
|
||||
/* [in] */ __RPC__in const BSTR strNamespace,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ __RPC__in_opt IWbemContext *pCtx,
|
||||
/* [unique][in][out] */ __RPC__deref_opt_inout_opt IWbemServices **ppWorkingNamespace,
|
||||
/* [unique][in][out] */ __RPC__deref_opt_inout_opt IWbemCallResult **ppResult);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *CancelAsyncCall )(
|
||||
__RPC__in IWbemServices * This,
|
||||
/* [in] */ __RPC__in_opt IWbemObjectSink *pSink);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryObjectSink )(
|
||||
__RPC__in IWbemServices * This,
|
||||
/* [in] */ long lFlags,
|
||||
/* [out] */ __RPC__deref_out_opt IWbemObjectSink **ppResponseHandler);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetObject )(
|
||||
__RPC__in IWbemServices * This,
|
||||
/* [in] */ __RPC__in const BSTR strObjectPath,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ __RPC__in_opt IWbemContext *pCtx,
|
||||
/* [unique][in][out] */ __RPC__deref_opt_inout_opt IWbemClassObject **ppObject,
|
||||
/* [unique][in][out] */ __RPC__deref_opt_inout_opt IWbemCallResult **ppCallResult);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetObjectAsync )(
|
||||
__RPC__in IWbemServices * This,
|
||||
/* [in] */ __RPC__in const BSTR strObjectPath,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ __RPC__in_opt IWbemContext *pCtx,
|
||||
/* [in] */ __RPC__in_opt IWbemObjectSink *pResponseHandler);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *PutClass )(
|
||||
__RPC__in IWbemServices * This,
|
||||
/* [in] */ __RPC__in_opt IWbemClassObject *pObject,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ __RPC__in_opt IWbemContext *pCtx,
|
||||
/* [unique][in][out] */ __RPC__deref_opt_inout_opt IWbemCallResult **ppCallResult);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *PutClassAsync )(
|
||||
__RPC__in IWbemServices * This,
|
||||
/* [in] */ __RPC__in_opt IWbemClassObject *pObject,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ __RPC__in_opt IWbemContext *pCtx,
|
||||
/* [in] */ __RPC__in_opt IWbemObjectSink *pResponseHandler);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *DeleteClass )(
|
||||
__RPC__in IWbemServices * This,
|
||||
/* [in] */ __RPC__in const BSTR strClass,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ __RPC__in_opt IWbemContext *pCtx,
|
||||
/* [unique][in][out] */ __RPC__deref_opt_inout_opt IWbemCallResult **ppCallResult);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *DeleteClassAsync )(
|
||||
__RPC__in IWbemServices * This,
|
||||
/* [in] */ __RPC__in const BSTR strClass,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ __RPC__in_opt IWbemContext *pCtx,
|
||||
/* [in] */ __RPC__in_opt IWbemObjectSink *pResponseHandler);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *CreateClassEnum )(
|
||||
__RPC__in IWbemServices * This,
|
||||
/* [in] */ __RPC__in const BSTR strSuperclass,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ __RPC__in_opt IWbemContext *pCtx,
|
||||
/* [out] */ __RPC__deref_out_opt IEnumWbemClassObject **ppEnum);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *CreateClassEnumAsync )(
|
||||
__RPC__in IWbemServices * This,
|
||||
/* [in] */ __RPC__in const BSTR strSuperclass,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ __RPC__in_opt IWbemContext *pCtx,
|
||||
/* [in] */ __RPC__in_opt IWbemObjectSink *pResponseHandler);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *PutInstance )(
|
||||
__RPC__in IWbemServices * This,
|
||||
/* [in] */ __RPC__in_opt IWbemClassObject *pInst,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ __RPC__in_opt IWbemContext *pCtx,
|
||||
/* [unique][in][out] */ __RPC__deref_opt_inout_opt IWbemCallResult **ppCallResult);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *PutInstanceAsync )(
|
||||
__RPC__in IWbemServices * This,
|
||||
/* [in] */ __RPC__in_opt IWbemClassObject *pInst,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ __RPC__in_opt IWbemContext *pCtx,
|
||||
/* [in] */ __RPC__in_opt IWbemObjectSink *pResponseHandler);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *DeleteInstance )(
|
||||
__RPC__in IWbemServices * This,
|
||||
/* [in] */ __RPC__in const BSTR strObjectPath,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ __RPC__in_opt IWbemContext *pCtx,
|
||||
/* [unique][in][out] */ __RPC__deref_opt_inout_opt IWbemCallResult **ppCallResult);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *DeleteInstanceAsync )(
|
||||
__RPC__in IWbemServices * This,
|
||||
/* [in] */ __RPC__in const BSTR strObjectPath,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ __RPC__in_opt IWbemContext *pCtx,
|
||||
/* [in] */ __RPC__in_opt IWbemObjectSink *pResponseHandler);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *CreateInstanceEnum )(
|
||||
__RPC__in IWbemServices * This,
|
||||
/* [in] */ __RPC__in const BSTR strFilter,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ __RPC__in_opt IWbemContext *pCtx,
|
||||
/* [out] */ __RPC__deref_out_opt IEnumWbemClassObject **ppEnum);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *CreateInstanceEnumAsync )(
|
||||
__RPC__in IWbemServices * This,
|
||||
/* [in] */ __RPC__in const BSTR strFilter,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ __RPC__in_opt IWbemContext *pCtx,
|
||||
/* [in] */ __RPC__in_opt IWbemObjectSink *pResponseHandler);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *ExecQuery )(
|
||||
__RPC__in IWbemServices * This,
|
||||
/* [in] */ __RPC__in const BSTR strQueryLanguage,
|
||||
/* [in] */ __RPC__in const BSTR strQuery,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ __RPC__in_opt IWbemContext *pCtx,
|
||||
/* [out] */ __RPC__deref_out_opt IEnumWbemClassObject **ppEnum);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *ExecQueryAsync )(
|
||||
__RPC__in IWbemServices * This,
|
||||
/* [in] */ __RPC__in const BSTR strQueryLanguage,
|
||||
/* [in] */ __RPC__in const BSTR strQuery,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ __RPC__in_opt IWbemContext *pCtx,
|
||||
/* [in] */ __RPC__in_opt IWbemObjectSink *pResponseHandler);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *ExecNotificationQuery )(
|
||||
__RPC__in IWbemServices * This,
|
||||
/* [in] */ __RPC__in const BSTR strQueryLanguage,
|
||||
/* [in] */ __RPC__in const BSTR strQuery,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ __RPC__in_opt IWbemContext *pCtx,
|
||||
/* [out] */ __RPC__deref_out_opt IEnumWbemClassObject **ppEnum);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *ExecNotificationQueryAsync )(
|
||||
__RPC__in IWbemServices * This,
|
||||
/* [in] */ __RPC__in const BSTR strQueryLanguage,
|
||||
/* [in] */ __RPC__in const BSTR strQuery,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ __RPC__in_opt IWbemContext *pCtx,
|
||||
/* [in] */ __RPC__in_opt IWbemObjectSink *pResponseHandler);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *ExecMethod )(
|
||||
__RPC__in IWbemServices * This,
|
||||
/* [in] */ __RPC__in const BSTR strObjectPath,
|
||||
/* [in] */ __RPC__in const BSTR strMethodName,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ __RPC__in_opt IWbemContext *pCtx,
|
||||
/* [in] */ __RPC__in_opt IWbemClassObject *pInParams,
|
||||
/* [unique][in][out] */ __RPC__deref_opt_inout_opt IWbemClassObject **ppOutParams,
|
||||
/* [unique][in][out] */ __RPC__deref_opt_inout_opt IWbemCallResult **ppCallResult);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *ExecMethodAsync )(
|
||||
__RPC__in IWbemServices * This,
|
||||
/* [in] */ __RPC__in const BSTR strObjectPath,
|
||||
/* [in] */ __RPC__in const BSTR strMethodName,
|
||||
/* [in] */ long lFlags,
|
||||
/* [in] */ __RPC__in_opt IWbemContext *pCtx,
|
||||
/* [in] */ __RPC__in_opt IWbemClassObject *pInParams,
|
||||
/* [in] */ __RPC__in_opt IWbemObjectSink *pResponseHandler);
|
||||
|
||||
END_INTERFACE
|
||||
} IWbemServicesVtbl;
|
||||
@@ -283,8 +283,21 @@ class IID(IID):
|
||||
return '<IID "{0}">'.format(self.strid.upper())
|
||||
return '<IID "{0}({1})">'.format(self.strid.upper(), self.name)
|
||||
|
||||
def generate_IID(Data1, Data2, Data3, Data41, Data42, Data43, Data44, Data45, Data46, Data47, Data48, **kwargs):
|
||||
return IID(Data1, Data2, Data3, (BYTE*8)(Data41, Data42, Data43, Data44, Data45, Data46, Data47, Data48), **kwargs)
|
||||
@classmethod
|
||||
def from_string(cls, iid):
|
||||
part_iid = iid.split("-")
|
||||
datas = [int(x, 16) for x in part_iid[:3]]
|
||||
datas.append(int(part_iid[3][:2], 16))
|
||||
datas.append(int(part_iid[3][2:], 16))
|
||||
for i in range(6):
|
||||
datas.append(int(part_iid[4][i * 2:(i + 1) * 2], 16))
|
||||
return cls.from_raw(*datas, strid=iid)
|
||||
|
||||
@classmethod
|
||||
def from_raw(cls, Data1, Data2, Data3, Data41, Data42, Data43, Data44, Data45, Data46, Data47, Data48, **kwargs):
|
||||
return cls(Data1, Data2, Data3, (BYTE*8)(Data41, Data42, Data43, Data44, Data45, Data46, Data47, Data48), **kwargs)
|
||||
|
||||
generate_IID = IID.from_raw
|
||||
|
||||
|
||||
class COMInterface(ctypes.c_void_p):
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -2,31 +2,11 @@ import struct
|
||||
import ctypes
|
||||
import functools
|
||||
from ctypes.wintypes import HRESULT
|
||||
from windows.generated_def.winstructs import *
|
||||
|
||||
# Simple Abstraction to call COM interface in Python (Python -> COM)
|
||||
IID_PACK = "<I", "<H", "<H", "<B", "<B", "<B", "<B", "<B", "<B", "<B", "<B"
|
||||
|
||||
|
||||
def get_IID_from_raw(raw):
|
||||
return "".join([struct.pack(i, j) for i, j in zip(IID_PACK, raw)])
|
||||
|
||||
|
||||
class COMInterface(ctypes.c_void_p):
|
||||
_functions_ = {
|
||||
"QueryInterface": ctypes.WINFUNCTYPE(HRESULT, ctypes.c_void_p, ctypes.c_void_p)(0, "QueryInterface"),
|
||||
"AddRef": ctypes.WINFUNCTYPE(HRESULT)(1, "AddRef"),
|
||||
"Release": ctypes.WINFUNCTYPE(HRESULT)(2, "Release")
|
||||
}
|
||||
|
||||
def __getattr__(self, name):
|
||||
if name in self._functions_:
|
||||
return functools.partial(self._functions_[name], self)
|
||||
return super(COMInterface, self).__getattribute__(name)
|
||||
|
||||
from windows.generated_def import interfaces
|
||||
from windows.generated_def.interfaces import generate_IID, IID
|
||||
|
||||
# Simple Implem to create COM Interface in Python (COM -> Python)
|
||||
|
||||
def create_c_callable(func, types, keepalive=[]):
|
||||
func_type = ctypes.WINFUNCTYPE(*types)
|
||||
c_callable = func_type(func)
|
||||
Reference in New Issue
Block a user