hnetcfg: Add typeinfo support to INetFwOpenPort.

This commit is contained in:
Alistair Leslie-Hughes 2014-09-17 15:59:35 +10:00 committed by Alexandre Julliard
parent fe802040f6
commit ab7a707136
3 changed files with 30 additions and 8 deletions

View file

@ -108,6 +108,7 @@ static REFIID tid_id[] =
&IID_INetFwAuthorizedApplication,
&IID_INetFwAuthorizedApplications,
&IID_INetFwMgr,
&IID_INetFwOpenPort,
&IID_INetFwPolicy,
&IID_INetFwProfile
};

View file

@ -21,6 +21,7 @@ enum type_id
INetFwAuthorizedApplication_tid,
INetFwAuthorizedApplications_tid,
INetFwMgr_tid,
INetFwOpenPort_tid,
INetFwPolicy_tid,
INetFwProfile_tid,
last_tid

View file

@ -95,8 +95,9 @@ static HRESULT WINAPI fw_port_GetTypeInfoCount(
{
fw_port *This = impl_from_INetFwOpenPort( iface );
FIXME("%p %p\n", This, pctinfo);
return E_NOTIMPL;
TRACE("%p %p\n", This, pctinfo);
*pctinfo = 1;
return S_OK;
}
static HRESULT WINAPI fw_port_GetTypeInfo(
@ -107,8 +108,8 @@ static HRESULT WINAPI fw_port_GetTypeInfo(
{
fw_port *This = impl_from_INetFwOpenPort( iface );
FIXME("%p %u %u %p\n", This, iTInfo, lcid, ppTInfo);
return E_NOTIMPL;
TRACE("%p %u %u %p\n", This, iTInfo, lcid, ppTInfo);
return get_typeinfo( INetFwOpenPort_tid, ppTInfo );
}
static HRESULT WINAPI fw_port_GetIDsOfNames(
@ -120,9 +121,18 @@ static HRESULT WINAPI fw_port_GetIDsOfNames(
DISPID *rgDispId )
{
fw_port *This = impl_from_INetFwOpenPort( iface );
ITypeInfo *typeinfo;
HRESULT hr;
FIXME("%p %s %p %u %u %p\n", This, debugstr_guid(riid), rgszNames, cNames, lcid, rgDispId);
return E_NOTIMPL;
TRACE("%p %s %p %u %u %p\n", This, debugstr_guid(riid), rgszNames, cNames, lcid, rgDispId);
hr = get_typeinfo( INetFwOpenPort_tid, &typeinfo );
if (SUCCEEDED(hr))
{
hr = ITypeInfo_GetIDsOfNames( typeinfo, rgszNames, cNames, rgDispId );
ITypeInfo_Release( typeinfo );
}
return hr;
}
static HRESULT WINAPI fw_port_Invoke(
@ -137,10 +147,20 @@ static HRESULT WINAPI fw_port_Invoke(
UINT *puArgErr )
{
fw_port *This = impl_from_INetFwOpenPort( iface );
ITypeInfo *typeinfo;
HRESULT hr;
FIXME("%p %d %s %d %d %p %p %p %p\n", This, dispIdMember, debugstr_guid(riid),
TRACE("%p %d %s %d %d %p %p %p %p\n", This, dispIdMember, debugstr_guid(riid),
lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
return E_NOTIMPL;
hr = get_typeinfo( INetFwOpenPort_tid, &typeinfo );
if (SUCCEEDED(hr))
{
hr = ITypeInfo_Invoke( typeinfo, &This->INetFwOpenPort_iface, dispIdMember,
wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr );
ITypeInfo_Release( typeinfo );
}
return hr;
}
static HRESULT WINAPI fw_port_get_Name(