home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Windows Gam…ming Gurus (2nd Edition) / Disc2.iso / vc98 / include / ilogobj.hxx < prev    next >
Text File  |  1998-04-25  |  6KB  |  230 lines

  1. /*++
  2.  
  3.    Copyright    (c)    1995-1996    Microsoft Corporation
  4.  
  5.    Module  Name:
  6.  
  7.       ilogobj.hxx
  8.  
  9.    Abstract:
  10.  
  11.       Logging interfaces
  12.  
  13.    Author:
  14.  
  15.        Terence Kwan    ( terryk )    18-June-1996
  16.  
  17.  
  18. --*/
  19.  
  20. # ifndef _ILOGOBJ_HXX_
  21. # define _ILOGOBJ_HXX_
  22.  
  23. //
  24. // strings
  25. //
  26.  
  27. #define NCSALOG_CLSID          TEXT("{FF16065F-DE82-11CF-BC0A-00AA006111E0}")
  28. #define ODBCLOG_CLSID          TEXT("{FF16065B-DE82-11CF-BC0A-00AA006111E0}")
  29. #define ASCLOG_CLSID           TEXT("{FF160657-DE82-11CF-BC0A-00AA006111E0}")
  30. #define EXTLOG_CLSID           TEXT("{FF160663-DE82-11CF-BC0A-00AA006111E0}")
  31.  
  32. #define NCSALOGUI_CLSID        TEXT("{31DCAB85-BB3E-11d0-9299-00C04FB6678B}")
  33. #define ODBCLOGUI_CLSID        TEXT("{31DCAB86-BB3E-11d0-9299-00C04FB6678B}")
  34. #define ASCLOGUI_CLSID         TEXT("{31DCAB87-BB3E-11d0-9299-00C04FB6678B}")
  35. #define EXTLOGUI_CLSID         TEXT("{31DCAB88-BB3E-11d0-9299-00C04FB6678B}")
  36.  
  37. //
  38. // GUIDS
  39. //
  40.  
  41. DEFINE_GUID(CLSID_InetLogInformation,
  42.     0xa1f89741, 0xf619, 0x11cf, 0xbc, 0xf, 0x0, 0xaa, 0x0, 0x61, 0x11, 0xe0);
  43.  
  44. DEFINE_GUID(IID_IINETLOG_INFORMATION, /* cc557a71-f61a-11cf-bc0f-00aa006111e0 */
  45.     0xcc557a71,0xf61a,0x11cf,0xbc, 0x0f, 0x00, 0xaa, 0x00, 0x61, 0x11, 0xe0);
  46.  
  47. DEFINE_GUID(IID_ICLAPI_CLIENT, /* 08fd99d1-cfb6-11cf-bc03-00aa006111e0 */
  48.     0x08fd99d1,0xcfb6,0x11cf,0xbc, 0x03, 0x00, 0xaa, 0x00, 0x61, 0x11, 0xe0);
  49.  
  50. DEFINE_GUID(IID_ILogPlugin, /* 08fd99d1-cfb6-11cf-bc03-00aa006111e0 */
  51.     0x08fd99d1,0xcfb6,0x11cf,0xbc, 0x03, 0x00, 0xaa, 0x00, 0x61, 0x11, 0xe0);
  52.  
  53. DEFINE_GUID(CLSID_NCSALOG, /* ff16065F-DE82-11cf-bc0a-00aa006111e0 */
  54.     0xff16065F,0xde82,0x11cf,0xbc, 0x0a, 0x00, 0xaa, 0x00, 0x61, 0x11, 0xe0);
  55.  
  56. DEFINE_GUID(CLSID_ODBCLOG, /* ff16065B-DE82-11cf-bc0a-00aa006111e0 */
  57.     0xff16065B,0xde82,0x11cf,0xbc, 0x0a, 0x00, 0xaa, 0x00, 0x61, 0x11, 0xe0);
  58.  
  59. DEFINE_GUID(CLSID_ASCLOG, /* ff160657-DE82-11cf-bc0a-00aa006111e0 */
  60.     0xff160657,0xde82,0x11cf,0xbc, 0x0a, 0x00, 0xaa, 0x00, 0x61, 0x11, 0xe0);
  61.  
  62. DEFINE_GUID(CLSID_EXTLOG, /* ff160663-DE82-11cf-bc0a-00aa006111e0 */
  63.     0xff160663,0xde82,0x11cf,0xbc, 0x0a, 0x00, 0xaa, 0x00, 0x61, 0x11, 0xe0);
  64.  
  65. // logging ui guids
  66. //IID_LOGGINGUI
  67. DEFINE_GUID(IID_LOGGINGUI, /* 31DCAB89-BB3E-11d0-9299-00C04FB6678B */
  68.     0x31dcab89, 0xbb3e, 0x11d0, 0x92, 0x99, 0x0, 0xc0, 0x4f, 0xb6, 0x67, 0x8b);
  69.  
  70. //NCSALOGUI_CLSID
  71. DEFINE_GUID(CLSID_NCSALOGUI, /* 31DCAB85-BB3E-11d0-9299-00C04FB6678B */
  72.     0x31dcab85, 0xbb3e, 0x11d0, 0x92, 0x99, 0x0, 0xc0, 0x4f, 0xb6, 0x67, 0x8b);
  73.  
  74. //ODBCLOGUI_CLSID
  75. DEFINE_GUID(CLSID_ODBCLOGUI, /* 31DCAB86-BB3E-11d0-9299-00C04FB6678B */
  76.     0x31dcab86, 0xbb3e, 0x11d0, 0x92, 0x99, 0x0, 0xc0, 0x4f, 0xb6, 0x67, 0x8b);
  77.  
  78. //ASCLOGUI_CLSID
  79. DEFINE_GUID(CLSID_ASCLOGUI, /* 31DCAB87-BB3E-11d0-9299-00C04FB6678B */
  80.     0x31dcab87, 0xbb3e, 0x11d0, 0x92, 0x99, 0x0, 0xc0, 0x4f, 0xb6, 0x67, 0x8b);
  81.  
  82. //EXTLOGUI_CLSID
  83. DEFINE_GUID(CLSID_EXTLOGUI, /* 31DCAB88-BB3E-11d0-9299-00C04FB6678B */
  84.     0x31dcab88, 0xbb3e, 0x11d0, 0x92, 0x99, 0x0, 0xc0, 0x4f, 0xb6, 0x67, 0x8b);
  85.  
  86.  
  87. //
  88. // Interface class for CINETLOG
  89. //
  90.  
  91. class IInetLogInformation : public IUnknown {
  92.  
  93.     public:
  94.         virtual LPSTR STDMETHODCALLTYPE
  95.         GetSiteName(
  96.             IN PCHAR    pszSiteName,
  97.             IN PDWORD   pcbSize
  98.             ) = 0;
  99.  
  100.         virtual LPSTR STDMETHODCALLTYPE
  101.         GetComputerName(
  102.             IN PCHAR    pszComputerName,
  103.             IN PDWORD   pcbSize
  104.             ) = 0;
  105.  
  106.         virtual LPSTR STDMETHODCALLTYPE
  107.         GetClientHostName(
  108.             IN PCHAR    pszClientHostName,
  109.             IN PDWORD   pcbSize
  110.             ) = 0;
  111.  
  112.         virtual LPSTR STDMETHODCALLTYPE
  113.         GetClientUserName(
  114.             IN PCHAR    pszClientUserName,
  115.             IN PDWORD   pcbSize
  116.             ) = 0;
  117.  
  118.         virtual LPSTR STDMETHODCALLTYPE
  119.         GetServerAddress(
  120.             IN PCHAR    pszServerIPAddress,
  121.             IN PDWORD   pcbSize
  122.             ) = 0;
  123.  
  124.         virtual LPSTR STDMETHODCALLTYPE
  125.         GetOperation(
  126.             IN PCHAR    pszOperation,
  127.             IN PDWORD   pcbSize
  128.             ) = 0;
  129.  
  130.         virtual LPSTR STDMETHODCALLTYPE
  131.         GetTarget(
  132.             IN PCHAR    pszTarget,
  133.             IN PDWORD   pcbSize
  134.             ) = 0;
  135.  
  136.         virtual LPSTR STDMETHODCALLTYPE
  137.         GetParameters(
  138.             IN PCHAR    pszParameters,
  139.             IN PDWORD   pcbSize
  140.             ) = 0;
  141.  
  142.         virtual LPSTR STDMETHODCALLTYPE
  143.         GetExtraHTTPHeaders(
  144.             IN PCHAR    pszHTTPHeaders,
  145.             IN PDWORD   pcbSize
  146.             ) = 0;
  147.  
  148.         virtual DWORD STDMETHODCALLTYPE
  149.         GetTimeForProcessing(
  150.             VOID
  151.             ) = 0;
  152.  
  153.         virtual DWORD STDMETHODCALLTYPE
  154.         GetBytesSent(
  155.             VOID
  156.             ) = 0;
  157.  
  158.         virtual DWORD STDMETHODCALLTYPE
  159.         GetBytesRecvd(
  160.             VOID
  161.             ) = 0;
  162.  
  163.         virtual DWORD STDMETHODCALLTYPE
  164.         GetWin32Status(
  165.             VOID
  166.             ) = 0;
  167.  
  168.         virtual DWORD STDMETHODCALLTYPE
  169.         GetProtocolStatus(
  170.             VOID
  171.             ) = 0;
  172.  
  173.         virtual DWORD STDMETHODCALLTYPE
  174.         GetPortNumber(
  175.             VOID
  176.             ) = 0;
  177.  
  178.         virtual LPSTR STDMETHODCALLTYPE
  179.         GetVersionString(
  180.             IN PCHAR    pszVersionString,
  181.             IN PDWORD   pcbSize
  182.             ) = 0;
  183.  
  184.  
  185. };
  186.  
  187.  
  188. //
  189. // CLAPI plugin Interface
  190. //
  191.  
  192. class ILogPlugin  : public IUnknown
  193. {
  194.     public:
  195.  
  196.     virtual HRESULT STDMETHODCALLTYPE
  197.     InitializeLog(
  198.         IN LPCSTR SiteName,
  199.         IN LPCSTR MetabasePath,
  200.         IN PCHAR pvIMDCOM ) = 0;
  201.  
  202.     virtual HRESULT STDMETHODCALLTYPE
  203.     TerminateLog( VOID ) = 0;
  204.  
  205.     virtual HRESULT STDMETHODCALLTYPE
  206.     LogInformation( IInetLogInformation *pLogObj ) = 0;
  207.  
  208.     virtual HRESULT STDMETHODCALLTYPE
  209.     SetConfig( IN DWORD cbSize, PBYTE Log ) = 0;
  210.  
  211.     virtual HRESULT STDMETHODCALLTYPE
  212.     GetConfig( IN DWORD cbSize, PBYTE Log ) = 0;
  213.  
  214.     virtual HRESULT STDMETHODCALLTYPE
  215.     QueryExtraLoggingFields(PDWORD cbSize, PCHAR szParameters) = 0;
  216. };
  217.  
  218. //
  219. // logging plugin UI Interface
  220. //
  221.  
  222. class ILogUIPlugin  : public IUnknown
  223. {
  224.     public:
  225.     virtual HRESULT STDMETHODCALLTYPE
  226.     OnProperties( IN OLECHAR* pocMachineName, IN OLECHAR* pocMetabasePath ) = 0;
  227. };
  228.  
  229. # endif // _ILOGOBJ_HXX_
  230.