// DecalNet.idl : IDL source for DecalNet.dll // // This file will be processed by the MIDL tool to // produce the type library (DecalNet.tlb) and marshalling code. import "oaidl.idl"; import "ocidl.idl"; import "Decal.idl"; interface IMessage; [ object, uuid(05D14E34-0A23-4A9F-95CF-9DB24B3CFB9F), dual, helpstring("IMessageMember Interface"), pointer_default(unique) ] interface IMessageMember : IDispatch { [id(5), propget, helpstring("property Member"), defaultcollelem] HRESULT Member(VARIANT vIndex, [out, retval] VARIANT *pVal); [id(6), propget, helpstring("property MemberName")] HRESULT MemberName(long Index, [out, retval] BSTR *pVal); [id(7), propget, helpstring("property Count")] HRESULT Count([out, retval] long *pVal); }; [ object, uuid(23EE0804-EAC7-493B-BB9D-2298FD44FFA1), dual, helpstring("IMessage Interface"), pointer_default(unique) ] interface IMessage : IDispatch { [id(2), propget, helpstring("property Type")] HRESULT Type([out, retval] long *pVal); [id(3), propget, helpstring("property Data")] HRESULT Data([out, retval] VARIANT *pVal); [id(5), propget, helpstring("property Member"), defaultcollelem] HRESULT Member(VARIANT vElement, [out, retval] VARIANT *pVal); [id(6), propget, helpstring("property MemberName")] HRESULT MemberName(long Index, [out, retval] BSTR *pVal); [id(7), propget, helpstring("property Count")] HRESULT Count([out, retval] long *pVal); }; [ object, uuid(853BFE61-6C14-4244-8B96-96F0C9647DE6), dual, helpstring("IMessageMember Interface"), pointer_default(unique) ] interface IMessageIterator : IDispatch { [propget, id(10), helpstring("Move the cursor to the next position")] HRESULT Next([optional] VARIANT vIndex, [out, retval] VARIANT *pbValue); [propget, id(1), helpstring("Data at the current position")] HRESULT Current([out, retval] VARIANT *pData); [propget, id(2), helpstring("Name of a member at a particular index")] HRESULT MemberName([out, retval] BSTR *pVal); [propget, id(3), helpstring("Current index of the iterator")] HRESULT Index([out,retval] long *pIndex); [propget, id(4), helpstring("String member by name")] HRESULT NextString (BSTR Name, [out, retval] BSTR *pValue); [propget, id(5), helpstring("Integer member by name")] HRESULT NextInt (BSTR Name, [out, retval] long *pValue); [propget, id(6), helpstring("Float member by name")] HRESULT NextFloat (BSTR Name, [out, retval] float *pValue); [propget, id(7), helpstring("Object member by name")] HRESULT NextObject (BSTR Name, [out, retval] IMessageIterator **pValue); [propget, id(8), helpstring("Object member by index")] HRESULT NextObjectIndex ([out, retval] IMessageIterator **pValue); [id(9), helpstring("Reset the iterator")] HRESULT Reset(); [propget, id(11), helpstring("Parent Message Object")] HRESULT Message([out, retval] IMessage **ppMsg); }; [ object, uuid(38AFE740-9189-4f7c-8DE2-E61087DD9F19), dual, helpstring("IMessage Interface"), pointer_default(unique) ] interface IMessage2 : IMessage { [propget, id(101), helpstring("property Members")] HRESULT Begin([out, retval] IMessageIterator * *pVal); }; [ object, uuid(AA405035-E001-4CC3-B43A-156206843D64), helpstring("INetService Interface"), pointer_default(unique) ] interface INetService : IUnknown { [propget, helpstring("property Decal")] HRESULT Decal([out, retval] IDecal * *pVal); [propget, helpstring("property Filter")] HRESULT Filter(REFCLSID clsid, REFIID iid, [out, retval, iid_is(iid)] LPVOID *pVal); [propget, helpstring("property FilterVB")] HRESULT FilterVB(BSTR strProgID, [out, retval] LPDISPATCH *pVal); [propget, helpstring("property Hooks")] HRESULT Hooks([out, retval] IACHooks * *pVal); }; [ object, uuid(EEB0BE9E-46BD-493F-97E2-330670C09F59), dual, helpstring("INetworkFilter Interface"), pointer_default(unique) ] interface INetworkFilter : IDispatch { [id(1), helpstring("method Dispatch")] HRESULT Dispatch(IMessage *Message); }; [ object, uuid(CE518B62-714F-4993-B0C2-C703A7062F38), helpstring("INetworkFilter Interface"), pointer_default(unique) ] interface INetworkFilter2 : IUnknown { [helpstring("method Dispatch")] HRESULT DispatchServer(IMessage2 *Message); [helpstring("method Dispatch")] HRESULT DispatchClient(IMessage2 *Message); [helpstring("method Initialize")] HRESULT Initialize(INetService *pService); [helpstring("method Terminate")] HRESULT Terminate(); }; [ object, uuid(03F3E2D0-7026-4C11-988A-4B3C58C71917), dual, helpstring("IWebRequest Interface"), pointer_default(unique) ] interface IWebRequest : IDispatch { [id(1), helpstring("method Get")] HRESULT Get(BSTR strURL); [id(2), helpstring("method Post")] HRESULT Post(BSTR strURL, BSTR strPostData); }; [ uuid(572B87C4-93BD-46B3-A291-CD58181D25DC), version(1.0), helpstring("DecalNet 1.0 Type Library") ] library DecalNet { importlib("stdole32.tlb"); importlib("stdole2.tlb"); interface IMessageMember; interface IMessage; interface IMessage2; interface INetworkFilter; interface INetworkFilter2; interface IMessageIterator; [ uuid(C8C406F8-BA2E-4964-8B04-FF38394A8E0E), helpstring("NetService Class") ] coclass NetService { [default] interface INetService; }; [ uuid(EEFA38DC-15B2-4232-B5BE-5A9ECB8E1A58), helpstring("_IWebRequestEvents Interface") ] dispinterface IWebRequestEvents { properties: methods: [id(1), helpstring("method Begin")] HRESULT Begin(); [id(2), helpstring("method End")] HRESULT End(long nResultCode, BSTR strText); }; [ uuid(15631E36-55CB-4D16-ADE7-74D9F8A5F4B6), helpstring("WebRequest Class") ] coclass WebRequest { [default] interface IWebRequest; [default, source] dispinterface IWebRequestEvents; }; [ uuid(7A85E352-B133-4AB5-A9DA-85978005BF88), helpstring("MessageRoot Class"), noncreatable ] coclass MessageRoot { [default] interface IMessageIterator; }; };