//+--------------------------------------------------------------------------- // // Copyright 1995 - 1997 Microsoft Corporation. All Rights Reserved. // // Contents: Cb32 Protocol Core // //---------------------------------------------------------------------------- cpp_quote("//+-------------------------------------------------------------------------") cpp_quote("//") cpp_quote("// Microsoft Windows") cpp_quote("// Copyright 1995-1997 Microsoft Corporation. All Rights Reserved.") cpp_quote("//") cpp_quote("// File: icbcore.h") cpp_quote("//") cpp_quote("//--------------------------------------------------------------------------") import "objidl.idl"; import "oleidl.idl"; import "oaidl.idl"; import "imsconf2.idl"; interface ICb32Core; interface ICb32CoreNotify; cpp_quote("") cpp_quote("////////////////////////////////////////////////////////////////////////////") cpp_quote("//") cpp_quote("// Constants") cpp_quote("enum {") cpp_quote(" CB32OP_CLOSEAPP = 0,") cpp_quote(" CB32OP_SHOWUI = 1") cpp_quote("};") cpp_quote("") cpp_quote("") cpp_quote("////////////////////////////////////////////////////////////////////////////") cpp_quote("// Return Codes") cpp_quote("") cpp_quote("#define NMCB_S(e) (0x01000300UL | (ULONG) (e))") cpp_quote("#define NMCB_E(e) (0x81000300UL | (ULONG) (e))") cpp_quote("") cpp_quote("enum {") cpp_quote("") cpp_quote("// Cb32core specific return codes") cpp_quote("//") cpp_quote(" NMCB_S_CANTSENDYET = NMCB_S((ULONG) 0x0001),") cpp_quote(" NMCB_S_CLOSEAPP = NMCB_S((ULONG) 0x0002),") cpp_quote(" NMCB_S_LASTCODE = NMCB_E((ULONG) 0x00FF)") cpp_quote("};") cpp_quote("") cpp_quote("enum {") cpp_quote("") cpp_quote("// Cb32core specific error return codes") cpp_quote("//") cpp_quote(" NMCB_E_NOTINITIALIZED = NMCB_E((ULONG) 0x0001),") cpp_quote(" NMCB_E_NOTCHATTING = NMCB_E((ULONG) 0x0002),") cpp_quote(" NMCB_E_UNKNOWNSENDER = NMCB_E((ULONG) 0x0003),") cpp_quote(" NMCB_E_PARTIALMSG = NMCB_E((ULONG) 0x0004),") cpp_quote(" NMCB_E_CANTWHISPER = NMCB_E((ULONG) 0x0005),") cpp_quote(" NMCB_E_CANTWHISPERNM1 = NMCB_E((ULONG) 0x0006),") cpp_quote(" NMCB_E_LASTCODE = NMCB_E((ULONG) 0x00FF)") cpp_quote("};") cpp_quote("") ////////////////////////////////////////////////////////////////////////////////// // GUID usage: // {C7047720-CABE-11d0-A041-444553540000}-{C704772F-CABE-11d0-A041-444553540000} cpp_quote("") cpp_quote("////////////////////////////////////////////////////////////////////////////") cpp_quote("// Interface Definitions") //-------------------------------------------------------------------------- // ICb32Core Interface [ object, uuid(C7047721-CABE-11d0-A041-444553540000), pointer_default(unique) ] interface ICb32Core : IUnknown { typedef [unique] ICb32Core *LPCB32CORE; HRESULT Init( [in] TCHAR *pszCommandLine ); HRESULT SetNotify( [in] IUnknown *pNotify ); HRESULT StartChat( [in] HWND hMainWnd, [out] INmSysInfo **ppSysInfo ); HRESULT DeInit( void ); HRESULT SendMessageData( [in] INmMember *pMember, [in] ULONG uBuffer, [in, size_is(uBuffer)] byte *pBuffer, [in] ULONG uCChatBuffer, [in, size_is(uCChatBuffer)] byte *pCChatBuffer ); HRESULT OnIdle( void ); } //-------------------------------------------------------------------------- // ICb32CoreNotify Interface [ object, uuid(C7047722-CABE-11d0-A041-444553540000), pointer_default(unique) ] interface ICb32CoreNotify : IUnknown { typedef [unique] ICb32CoreNotify *LPCB32CORENOTIFY; HRESULT ChatStatus( [in] BOOL bInProgress ); HRESULT ReceivedMessage( [in] BOOL bEcho, [in] TCHAR *pszMemberName, [in] INmMember *pMember, [in] TCHAR *pszWhisperedToName, [in] INmMember *pWhisperedTo, [in] ULONG uBuffer, [in, size_is(uBuffer)] byte *pBuffer, [in] ULONG uCChatBuffer, [in, size_is(uCChatBuffer)] byte *pCChatBuffer, [in] HRESULT hr ); HRESULT MemberJoinedConference( [in] INmMember *pMember, [in] HRESULT hr ); HRESULT MemberLeftConference( [in] INmMember *pMember ); HRESULT MemberJoinedChat( [in] INmMember *pMember ); HRESULT MemberLeftChat( [in] INmMember *pMember ); HRESULT SpecialOps( [in] DWORD dwSpecial ); } [ uuid(C704772F-CABE-11d0-A041-444553540000), version(1.0), helpstring("Cb32Core Type Library") ] library Cb32Core { [ uuid(C7047720-CABE-11d0-A041-444553540000), helpstring("Cb32 Protocol Core ") ] coclass Cb32Core { [default] interface ICb32Core; }; };