Click here to Skip to main content
Click here to Skip to main content
Add your own
alternative version

Web Win32/WTL Hybrid

, 22 Dec 2005
How to implement a two-way communication path from IExplorer and WTL code
webwin32sample.zip
html
res
toolbar.bmp
WebWin32Sample.exe.manifest
WebWin32Sample.ico
WebWin32SampleDoc.ico
WebWin32EventHandler.rgs
WebWin32HTMLEventHandler.rgs
WebWin32Lib.rgs
WebWin32Sample.rgs
WebWin32Sampleps.def
WebWin32Sampleps.mk
webwin32samplevc6.zip
toolbar.bmp
WebWin32Sample.exe.manifest
WebWin32Sample.ico
WebWin32Sampledoc.ico
WebWin32Sampleps.def
WebWin32Sample.dsp
WebWin32Sample.dsw
WebWin32Sampleps.mk
WebWin32Sample.opt
WebWin32Sample.plg
QQQQ.rgs
WebWin32EventHandler.rgs
WebWin32HTMLEventHandler.rgs
WebWin32Lib.rgs
WebWin32Sample.rgs
WebWin32Sample.idl.seg
WebWin32Sample.tlb
#pragma warning( disable: 4049 )  /* more than 64k source lines */

/* this ALWAYS GENERATED file contains the definitions for the interfaces */


 /* File created by MIDL compiler version 6.00.0347 */
/* at Sat Aug 31 12:32:54 2002
 */
/* Compiler settings for WebWin32Sample.idl:
    Oicf, W1, Zp8, env=Win32 (32b run)
    protocol : dce , ms_ext, c_ext
    error checks: allocation ref bounds_check enum stub_data 
    VC __declspec() decoration level: 
         __declspec(uuid()), __declspec(selectany), __declspec(novtable)
         DECLSPEC_UUID(), MIDL_INTERFACE()
*/
//@@MIDL_FILE_HEADING(  )


/* verify that the <rpcndr.h> version is high enough to compile this file*/
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 440
#endif

#include "rpc.h"
#include "rpcndr.h"

#ifndef __RPCNDR_H_VERSION__
#error this stub requires an updated version of <rpcndr.h>
#endif // __RPCNDR_H_VERSION__

#ifndef COM_NO_WINDOWS_H
#include "windows.h"
#include "ole2.h"
#endif /*COM_NO_WINDOWS_H*/

#ifndef __WebWin32Sample_h__
#define __WebWin32Sample_h__

#if defined(_MSC_VER) && (_MSC_VER >= 1020)
#pragma once
#endif

/* Forward Declarations */ 

#ifndef __IWebWin32Lib_FWD_DEFINED__
#define __IWebWin32Lib_FWD_DEFINED__
typedef interface IWebWin32Lib IWebWin32Lib;
#endif 	/* __IWebWin32Lib_FWD_DEFINED__ */


#ifndef __IWebWin32EventHandler_FWD_DEFINED__
#define __IWebWin32EventHandler_FWD_DEFINED__
typedef interface IWebWin32EventHandler IWebWin32EventHandler;
#endif 	/* __IWebWin32EventHandler_FWD_DEFINED__ */


#ifndef __WebWin32Lib_FWD_DEFINED__
#define __WebWin32Lib_FWD_DEFINED__

#ifdef __cplusplus
typedef class WebWin32Lib WebWin32Lib;
#else
typedef struct WebWin32Lib WebWin32Lib;
#endif /* __cplusplus */

#endif 	/* __WebWin32Lib_FWD_DEFINED__ */


#ifndef ___IWebWin32EventHandlerEvents_FWD_DEFINED__
#define ___IWebWin32EventHandlerEvents_FWD_DEFINED__
typedef interface _IWebWin32EventHandlerEvents _IWebWin32EventHandlerEvents;
#endif 	/* ___IWebWin32EventHandlerEvents_FWD_DEFINED__ */


#ifndef __WebWin32EventHandler_FWD_DEFINED__
#define __WebWin32EventHandler_FWD_DEFINED__

#ifdef __cplusplus
typedef class WebWin32EventHandler WebWin32EventHandler;
#else
typedef struct WebWin32EventHandler WebWin32EventHandler;
#endif /* __cplusplus */

#endif 	/* __WebWin32EventHandler_FWD_DEFINED__ */


/* header files for imported files */
#include "oaidl.h"
#include "ocidl.h"

#ifdef __cplusplus
extern "C"{
#endif 

void * __RPC_USER MIDL_user_allocate(size_t);
void __RPC_USER MIDL_user_free( void * ); 

#ifndef __IWebWin32Lib_INTERFACE_DEFINED__
#define __IWebWin32Lib_INTERFACE_DEFINED__

/* interface IWebWin32Lib */
/* [unique][helpstring][nonextensible][dual][uuid][object] */ 


EXTERN_C const IID IID_IWebWin32Lib;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("17D4BA6F-0565-4C27-9549-89ACA363B8EC")
    IWebWin32Lib : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE MyMessageBox( 
            /* [in] */ BSTR Text,
            /* [in] */ BSTR Title,
            /* [retval][out] */ LONG *Result) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE HideTree( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ShowTree( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetChildFrame( 
            /* [in] */ LONG pChildFrame) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AddChildToTree( 
            /* [in] */ BSTR childText) = 0;
        
        virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_StatusBarText( 
            /* [in] */ BSTR Text) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE FormSubmit( 
            BSTR FormName) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IWebWin32LibVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IWebWin32Lib * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IWebWin32Lib * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IWebWin32Lib * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IWebWin32Lib * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IWebWin32Lib * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IWebWin32Lib * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IWebWin32Lib * 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);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *MyMessageBox )( 
            IWebWin32Lib * This,
            /* [in] */ BSTR Text,
            /* [in] */ BSTR Title,
            /* [retval][out] */ LONG *Result);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *HideTree )( 
            IWebWin32Lib * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ShowTree )( 
            IWebWin32Lib * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetChildFrame )( 
            IWebWin32Lib * This,
            /* [in] */ LONG pChildFrame);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *AddChildToTree )( 
            IWebWin32Lib * This,
            /* [in] */ BSTR childText);
        
        /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_StatusBarText )( 
            IWebWin32Lib * This,
            /* [in] */ BSTR Text);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *FormSubmit )( 
            IWebWin32Lib * This,
            BSTR FormName);
        
        END_INTERFACE
    } IWebWin32LibVtbl;

    interface IWebWin32Lib
    {
        CONST_VTBL struct IWebWin32LibVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IWebWin32Lib_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IWebWin32Lib_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IWebWin32Lib_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IWebWin32Lib_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IWebWin32Lib_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IWebWin32Lib_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IWebWin32Lib_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IWebWin32Lib_MyMessageBox(This,Text,Title,Result)	\
    (This)->lpVtbl -> MyMessageBox(This,Text,Title,Result)

#define IWebWin32Lib_HideTree(This)	\
    (This)->lpVtbl -> HideTree(This)

#define IWebWin32Lib_ShowTree(This)	\
    (This)->lpVtbl -> ShowTree(This)

#define IWebWin32Lib_SetChildFrame(This,pChildFrame)	\
    (This)->lpVtbl -> SetChildFrame(This,pChildFrame)

#define IWebWin32Lib_AddChildToTree(This,childText)	\
    (This)->lpVtbl -> AddChildToTree(This,childText)

#define IWebWin32Lib_put_StatusBarText(This,Text)	\
    (This)->lpVtbl -> put_StatusBarText(This,Text)

#define IWebWin32Lib_FormSubmit(This,FormName)	\
    (This)->lpVtbl -> FormSubmit(This,FormName)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IWebWin32Lib_MyMessageBox_Proxy( 
    IWebWin32Lib * This,
    /* [in] */ BSTR Text,
    /* [in] */ BSTR Title,
    /* [retval][out] */ LONG *Result);


void __RPC_STUB IWebWin32Lib_MyMessageBox_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IWebWin32Lib_HideTree_Proxy( 
    IWebWin32Lib * This);


void __RPC_STUB IWebWin32Lib_HideTree_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IWebWin32Lib_ShowTree_Proxy( 
    IWebWin32Lib * This);


void __RPC_STUB IWebWin32Lib_ShowTree_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IWebWin32Lib_SetChildFrame_Proxy( 
    IWebWin32Lib * This,
    /* [in] */ LONG pChildFrame);


void __RPC_STUB IWebWin32Lib_SetChildFrame_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IWebWin32Lib_AddChildToTree_Proxy( 
    IWebWin32Lib * This,
    /* [in] */ BSTR childText);


void __RPC_STUB IWebWin32Lib_AddChildToTree_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IWebWin32Lib_put_StatusBarText_Proxy( 
    IWebWin32Lib * This,
    /* [in] */ BSTR Text);


void __RPC_STUB IWebWin32Lib_put_StatusBarText_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IWebWin32Lib_FormSubmit_Proxy( 
    IWebWin32Lib * This,
    BSTR FormName);


void __RPC_STUB IWebWin32Lib_FormSubmit_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IWebWin32Lib_INTERFACE_DEFINED__ */


#ifndef __IWebWin32EventHandler_INTERFACE_DEFINED__
#define __IWebWin32EventHandler_INTERFACE_DEFINED__

/* interface IWebWin32EventHandler */
/* [unique][helpstring][nonextensible][dual][uuid][object] */ 


EXTERN_C const IID IID_IWebWin32EventHandler;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("DDD0E784-6B9A-4D89-91AE-A33A314269EB")
    IWebWin32EventHandler : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetHandler( 
            /* [in] */ LONG pThis,
            /* [in] */ LONG pMember) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE CallHandler( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IWebWin32EventHandlerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IWebWin32EventHandler * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IWebWin32EventHandler * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IWebWin32EventHandler * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IWebWin32EventHandler * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IWebWin32EventHandler * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IWebWin32EventHandler * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IWebWin32EventHandler * 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);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetHandler )( 
            IWebWin32EventHandler * This,
            /* [in] */ LONG pThis,
            /* [in] */ LONG pMember);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *CallHandler )( 
            IWebWin32EventHandler * This);
        
        END_INTERFACE
    } IWebWin32EventHandlerVtbl;

    interface IWebWin32EventHandler
    {
        CONST_VTBL struct IWebWin32EventHandlerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IWebWin32EventHandler_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IWebWin32EventHandler_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IWebWin32EventHandler_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IWebWin32EventHandler_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IWebWin32EventHandler_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IWebWin32EventHandler_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IWebWin32EventHandler_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IWebWin32EventHandler_SetHandler(This,pThis,pMember)	\
    (This)->lpVtbl -> SetHandler(This,pThis,pMember)

#define IWebWin32EventHandler_CallHandler(This)	\
    (This)->lpVtbl -> CallHandler(This)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IWebWin32EventHandler_SetHandler_Proxy( 
    IWebWin32EventHandler * This,
    /* [in] */ LONG pThis,
    /* [in] */ LONG pMember);


void __RPC_STUB IWebWin32EventHandler_SetHandler_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IWebWin32EventHandler_CallHandler_Proxy( 
    IWebWin32EventHandler * This);


void __RPC_STUB IWebWin32EventHandler_CallHandler_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IWebWin32EventHandler_INTERFACE_DEFINED__ */



#ifndef __WebWin32SampleLib_LIBRARY_DEFINED__
#define __WebWin32SampleLib_LIBRARY_DEFINED__

/* library WebWin32SampleLib */
/* [helpstring][version][uuid] */ 


EXTERN_C const IID LIBID_WebWin32SampleLib;

EXTERN_C const CLSID CLSID_WebWin32Lib;

#ifdef __cplusplus

class DECLSPEC_UUID("F5B33126-8AD7-4A05-956D-04036F97B0BB")
WebWin32Lib;
#endif

#ifndef ___IWebWin32EventHandlerEvents_DISPINTERFACE_DEFINED__
#define ___IWebWin32EventHandlerEvents_DISPINTERFACE_DEFINED__

/* dispinterface _IWebWin32EventHandlerEvents */
/* [helpstring][uuid] */ 


EXTERN_C const IID DIID__IWebWin32EventHandlerEvents;

#if defined(__cplusplus) && !defined(CINTERFACE)

    MIDL_INTERFACE("68BB8438-FB59-4B24-84E8-41A324696BEA")
    _IWebWin32EventHandlerEvents : public IDispatch
    {
    };
    
#else 	/* C style interface */

    typedef struct _IWebWin32EventHandlerEventsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            _IWebWin32EventHandlerEvents * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            _IWebWin32EventHandlerEvents * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            _IWebWin32EventHandlerEvents * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            _IWebWin32EventHandlerEvents * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            _IWebWin32EventHandlerEvents * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            _IWebWin32EventHandlerEvents * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            _IWebWin32EventHandlerEvents * 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);
        
        END_INTERFACE
    } _IWebWin32EventHandlerEventsVtbl;

    interface _IWebWin32EventHandlerEvents
    {
        CONST_VTBL struct _IWebWin32EventHandlerEventsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define _IWebWin32EventHandlerEvents_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define _IWebWin32EventHandlerEvents_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define _IWebWin32EventHandlerEvents_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define _IWebWin32EventHandlerEvents_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define _IWebWin32EventHandlerEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define _IWebWin32EventHandlerEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define _IWebWin32EventHandlerEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)

#endif /* COBJMACROS */


#endif 	/* C style interface */


#endif 	/* ___IWebWin32EventHandlerEvents_DISPINTERFACE_DEFINED__ */


EXTERN_C const CLSID CLSID_WebWin32EventHandler;

#ifdef __cplusplus

class DECLSPEC_UUID("CF333D13-2608-46DA-AED0-5E1FAEF96913")
WebWin32EventHandler;
#endif
#endif /* __WebWin32SampleLib_LIBRARY_DEFINED__ */

/* Additional Prototypes for ALL interfaces */

unsigned long             __RPC_USER  BSTR_UserSize(     unsigned long *, unsigned long            , BSTR * ); 
unsigned char * __RPC_USER  BSTR_UserMarshal(  unsigned long *, unsigned char *, BSTR * ); 
unsigned char * __RPC_USER  BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * ); 
void                      __RPC_USER  BSTR_UserFree(     unsigned long *, BSTR * ); 

/* end of Additional Prototypes */

#ifdef __cplusplus
}
#endif

#endif


By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here

Share

About the Author

Jesus Salas
CEO wave-vs.net
Spain Spain
No Biography provided

| Advertise | Privacy | Mobile
Web02 | 2.8.141015.1 | Last Updated 22 Dec 2005
Article Copyright 2002 by Jesus Salas
Everything else Copyright © CodeProject, 1999-2014
Terms of Service
Layout: fixed | fluid