diff --git a/dlls/wshom.ocx/network.c b/dlls/wshom.ocx/network.c index dcc52c02ed7..764a1d8b25a 100644 --- a/dlls/wshom.ocx/network.c +++ b/dlls/wshom.ocx/network.c @@ -16,6 +16,9 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ +#define COBJMACROS + +#include "dispex.h" #include "wshom_private.h" #include "wshom.h" @@ -30,17 +33,16 @@ static HRESULT WINAPI WshNetwork2_QueryInterface(IWshNetwork2 *iface, REFIID rii if(IsEqualGUID(riid, &IID_IUnknown) || IsEqualGUID(riid, &IID_IDispatch) || IsEqualGUID(riid, &IID_IWshNetwork) || - IsEqualGUID(riid, &IID_IWshNetwork2)) - { + IsEqualGUID(riid, &IID_IWshNetwork2)) { *ppv = iface; - }else { - FIXME("Unknown iface %s\n", debugstr_guid(riid)); + IUnknown_AddRef((IUnknown*)*ppv); + return S_OK; + } + else { + WARN("interface not supported %s\n", debugstr_guid(riid)); *ppv = NULL; return E_NOINTERFACE; } - - IUnknown_AddRef((IUnknown*)*ppv); - return S_OK; } static ULONG WINAPI WshNetwork2_AddRef(IWshNetwork2 *iface) diff --git a/dlls/wshom.ocx/tests/wshom.c b/dlls/wshom.ocx/tests/wshom.c index d84eb0441ff..5b3b7f81720 100644 --- a/dlls/wshom.ocx/tests/wshom.c +++ b/dlls/wshom.ocx/tests/wshom.c @@ -700,6 +700,8 @@ static void test_wshnetwork(void) check_interface(disp, &IID_IWshNetwork, TRUE); check_interface(disp, &IID_IWshNetwork2, TRUE); + check_interface(disp, &IID_IDispatchEx, FALSE); + check_interface(disp, &IID_IObjectWithSite, FALSE); IDispatch_Release(disp); }