LMStats.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:5k
源码类别:

模拟服务器

开发平台:

C/C++

  1. /*++ BUILD Version: 0001    // Increment this if a change has global effects
  2. Copyright (c) 1991-1999  Microsoft Corporation
  3. Module Name:
  4.     lmstats.h
  5. Abstract:
  6.     This module defines the API function prototypes and data structures
  7.     for the following groups of NT API functions:
  8.         NetStatistics
  9. Environment:
  10.     User Mode - Win32
  11. Notes:
  12.     You must include NETCONS.H before this file, since this file depends
  13.     on values defined in NETCONS.H.
  14. --*/
  15. #ifndef _LMSTATS_
  16. #define _LMSTATS_
  17. #if _MSC_VER > 1000
  18. #pragma once
  19. #endif
  20. #ifdef __cplusplus
  21. extern "C" {
  22. #endif
  23. #include <lmcons.h>
  24. //
  25. // Function Prototypes - Statistics
  26. //
  27. NET_API_STATUS NET_API_FUNCTION
  28. NetStatisticsGet (
  29.     IN  LMSTR   server,
  30.     IN  LMSTR   service,
  31.     IN  DWORD   level,
  32.     IN  DWORD   options,
  33.     OUT LPBYTE  *bufptr
  34.     );
  35. //
  36. // Data Structures - Statistics
  37. //
  38. #ifdef LM20_WORKSTATION_STATISTICS
  39. typedef struct _STAT_WORKSTATION_0 {
  40.      DWORD          stw0_start;
  41.      DWORD          stw0_numNCB_r;
  42.      DWORD          stw0_numNCB_s;
  43.      DWORD          stw0_numNCB_a;
  44.      DWORD          stw0_fiNCB_r;
  45.      DWORD          stw0_fiNCB_s;
  46.      DWORD          stw0_fiNCB_a;
  47.      DWORD          stw0_fcNCB_r;
  48.      DWORD          stw0_fcNCB_s;
  49.      DWORD          stw0_fcNCB_a;
  50.      DWORD          stw0_sesstart;
  51.      DWORD          stw0_sessfailcon;
  52.      DWORD          stw0_sessbroke;
  53.      DWORD          stw0_uses;
  54.      DWORD          stw0_usefail;
  55.      DWORD          stw0_autorec;
  56.      DWORD          stw0_bytessent_r_lo;
  57.      DWORD          stw0_bytessent_r_hi;
  58.      DWORD          stw0_bytesrcvd_r_lo;
  59.      DWORD          stw0_bytesrcvd_r_hi;
  60.      DWORD          stw0_bytessent_s_lo;
  61.      DWORD          stw0_bytessent_s_hi;
  62.      DWORD          stw0_bytesrcvd_s_lo;
  63.      DWORD          stw0_bytesrcvd_s_hi;
  64.      DWORD          stw0_bytessent_a_lo;
  65.      DWORD          stw0_bytessent_a_hi;
  66.      DWORD          stw0_bytesrcvd_a_lo;
  67.      DWORD          stw0_bytesrcvd_a_hi;
  68.      DWORD          stw0_reqbufneed;
  69.      DWORD          stw0_bigbufneed;
  70. } STAT_WORKSTATION_0, *PSTAT_WORKSTATION_0, *LPSTAT_WORKSTATION_0;
  71. #else
  72. //
  73. // NB: The following structure is REDIR_STATISTICS in sdkincntddnfs.h. If you
  74. //     change the structure, change it in both places
  75. //
  76. typedef struct _STAT_WORKSTATION_0 {
  77.     LARGE_INTEGER   StatisticsStartTime;
  78.     LARGE_INTEGER   BytesReceived;
  79.     LARGE_INTEGER   SmbsReceived;
  80.     LARGE_INTEGER   PagingReadBytesRequested;
  81.     LARGE_INTEGER   NonPagingReadBytesRequested;
  82.     LARGE_INTEGER   CacheReadBytesRequested;
  83.     LARGE_INTEGER   NetworkReadBytesRequested;
  84.     LARGE_INTEGER   BytesTransmitted;
  85.     LARGE_INTEGER   SmbsTransmitted;
  86.     LARGE_INTEGER   PagingWriteBytesRequested;
  87.     LARGE_INTEGER   NonPagingWriteBytesRequested;
  88.     LARGE_INTEGER   CacheWriteBytesRequested;
  89.     LARGE_INTEGER   NetworkWriteBytesRequested;
  90.     DWORD           InitiallyFailedOperations;
  91.     DWORD           FailedCompletionOperations;
  92.     DWORD           ReadOperations;
  93.     DWORD           RandomReadOperations;
  94.     DWORD           ReadSmbs;
  95.     DWORD           LargeReadSmbs;
  96.     DWORD           SmallReadSmbs;
  97.     DWORD           WriteOperations;
  98.     DWORD           RandomWriteOperations;
  99.     DWORD           WriteSmbs;
  100.     DWORD           LargeWriteSmbs;
  101.     DWORD           SmallWriteSmbs;
  102.     DWORD           RawReadsDenied;
  103.     DWORD           RawWritesDenied;
  104.     DWORD           NetworkErrors;
  105.     //  Connection/Session counts
  106.     DWORD           Sessions;
  107.     DWORD           FailedSessions;
  108.     DWORD           Reconnects;
  109.     DWORD           CoreConnects;
  110.     DWORD           Lanman20Connects;
  111.     DWORD           Lanman21Connects;
  112.     DWORD           LanmanNtConnects;
  113.     DWORD           ServerDisconnects;
  114.     DWORD           HungSessions;
  115.     DWORD           UseCount;
  116.     DWORD           FailedUseCount;
  117.     //
  118.     //  Queue Lengths (updates protected by RdrMpxTableSpinLock NOT
  119.     //  RdrStatisticsSpinlock)
  120.     //
  121.     DWORD           CurrentCommands;
  122. } STAT_WORKSTATION_0, *PSTAT_WORKSTATION_0, *LPSTAT_WORKSTATION_0;
  123. #endif
  124. typedef struct _STAT_SERVER_0 {
  125.      DWORD          sts0_start;
  126.      DWORD          sts0_fopens;
  127.      DWORD          sts0_devopens;
  128.      DWORD          sts0_jobsqueued;
  129.      DWORD          sts0_sopens;
  130.      DWORD          sts0_stimedout;
  131.      DWORD          sts0_serrorout;
  132.      DWORD          sts0_pwerrors;
  133.      DWORD          sts0_permerrors;
  134.      DWORD          sts0_syserrors;
  135.      DWORD          sts0_bytessent_low;
  136.      DWORD          sts0_bytessent_high;
  137.      DWORD          sts0_bytesrcvd_low;
  138.      DWORD          sts0_bytesrcvd_high;
  139.      DWORD          sts0_avresponse;
  140.      DWORD          sts0_reqbufneed;
  141.      DWORD          sts0_bigbufneed;
  142. } STAT_SERVER_0, *PSTAT_SERVER_0, *LPSTAT_SERVER_0;
  143. //
  144. // Special Values and Constants
  145. //
  146. #define STATSOPT_CLR    1
  147. #define STATS_NO_VALUE  ((unsigned long) -1L)
  148. #define STATS_OVERFLOW  ((unsigned long) -2L)
  149. #ifdef __cplusplus
  150. }
  151. #endif
  152. #endif // _LMSTATS.H