Retrieves operating statistics for a workstation
#include <NetShare.au3>
_Net_Share_StatisticsGetWrk ( [$sWorkStation = ""] )
$sWorkStation | [optional] Specifies the DNS or NetBIOS name of the remote server on which the function is to execute. If this parameter is blank, the local computer is used. |
Success: | an array with the following format: [ 0] - Statistics collection start time. The value is stored as the number of seconds elapsed since 00:00:00, January 1, 1970. [ 1] - Bytes received by the workstation [ 2] - Server message blocks (SMBs) received by the workstation [ 3] - Bytes that have been read by paging I/O requests [ 4] - Bytes that have been read by non-paging I/O requests [ 5] - Bytes that have been read by cache I/O requests [ 6] - Bytes that have been read by disk I/O requests [ 7] - Bytes transmitted by the workstation [ 8] - SMBs transmitted by the workstation [ 9] - Bytes that have been written by paging I/O requests [10] - Bytes that have been written by non-paging I/O requests [11] - Bytes that have been written by cache I/O requests [12] - Bytes that have been written by disk I/O requests [13] - Network operations that failed to begin [14] - Network operations that failed to complete [15] - Read operations initiated by the workstation [16] - Random access reads initiated by the workstation [17] - Read requests the workstation has sent to servers [18] - Read requests the workstation has sent to servers that are greater than twice the size of the server's negotiated buffer size. [19] - Read requests the workstation has sent to servers that are less than 1/4 of the size of the server's negotiated buffer size. [20] - Write operations initiated by the workstation [21] - Random access writes initiated by the workstation [22] - Write requests the workstation has sent to servers [23] - Write requests the workstation has sent to servers that are greater than twice the size of the server's negotiated buffer size. [24] - Write requests the workstation has sent to servers that are less than 1/4 of the size of the server's negotiated buffer size. [25] - Raw read requests made by the workstation that have been denied [26] - Raw write requests made by the workstation that have been denied [27] - Network errors received by the workstation [28] - Workstation sessions that were established [29] - Imes the workstation attempted to create a session but failed [30] - Connections that have failed [31] - PCNET connections that have succeeded [32] - LanManager 20 connections that have succeeded [33] - LanManager 21 connections that have succeeded [34] - Windows NT connections that have succeeded [35] - Times the workstation was disconnected by a network server [36] - Sessions that have expired on the workstation [37] - Network connections established by the workstation [38] - Failed network connections for the workstation [39] - Current requests that have not been completed |
Failure: | sets the @error flag to non-zero. |
No special group membership is required to obtain workstation statistics.
Only members of the Administrators or Server Operators local group can successfully execute this function on a remote server.
Search NetStatisticsGet in MSDN Library.
#include <GUIConstantsEx.au3>
#include <NetShare.au3>
#include <WindowsConstants.au3>
Global $g_idMemo
Example()
Func Example()
Local $aInfo
; Create GUI
GUICreate("NetShare", 400, 300)
; Create memo control
$g_idMemo = GUICtrlCreateEdit("", 2, 2, 396, 296, $WS_VSCROLL)
GUICtrlSetFont($g_idMemo, 9, 400, 0, "Courier New")
GUISetState(@SW_SHOW)
; Get workstation statistics
$aInfo = _Net_Share_StatisticsGetWrk(@ComputerName)
MemoWrite("NetStatisticsGetWrk")
MemoWrite("Statistics started ......: " & $aInfo[0])
MemoWrite("Bytes received ..........: " & $aInfo[1])
MemoWrite("SMBs received ...........: " & $aInfo[2])
MemoWrite("Paging I/O bytes ........: " & $aInfo[3])
MemoWrite("Non-paging I/O bytes ....: " & $aInfo[4])
MemoWrite("Cache I/O bytes ..... ...: " & $aInfo[5])
MemoWrite("Disk I/O bytes ..........: " & $aInfo[6])
MemoWrite("Bytes transmitted .......: " & $aInfo[7])
MemoWrite("SMBs transmitted ........: " & $aInfo[8])
MemoWrite("Paging I/O bytes ........: " & $aInfo[9])
MemoWrite("Non-paging I/O bytes ....: " & $aInfo[10])
MemoWrite("Cache I/O bytes .........: " & $aInfo[11])
MemoWrite("Disk I/O bytes ..........: " & $aInfo[12])
MemoWrite("Failed ops begin ........: " & $aInfo[13])
MemoWrite("Failed ops completed ....: " & $aInfo[14])
MemoWrite("Read operations .........: " & $aInfo[15])
MemoWrite("Random access reads .....: " & $aInfo[16])
MemoWrite("Read requests sent ......: " & $aInfo[17])
MemoWrite("Read requests big .......: " & $aInfo[18])
MemoWrite("Read requests small .....: " & $aInfo[19])
MemoWrite("Write operations ........: " & $aInfo[20])
MemoWrite("Random access writes ....: " & $aInfo[21])
MemoWrite("Write requests sent .....: " & $aInfo[22])
MemoWrite("Write requests big ......: " & $aInfo[23])
MemoWrite("Write requests small ....: " & $aInfo[24])
MemoWrite("Denied raw reads ........: " & $aInfo[25])
MemoWrite("Denied raw writes .......: " & $aInfo[26])
MemoWrite("Network errors ..........: " & $aInfo[27])
MemoWrite("Sessions established ....: " & $aInfo[28])
MemoWrite("Failed sessions .........: " & $aInfo[29])
MemoWrite("Failed connections ......: " & $aInfo[30])
MemoWrite("PCNET connections .......: " & $aInfo[31])
MemoWrite("NetShare 20 connections .: " & $aInfo[32])
MemoWrite("NetShare 21 connections .: " & $aInfo[33])
MemoWrite("WinNT connections .......: " & $aInfo[34])
MemoWrite("Disconnects .............: " & $aInfo[35])
MemoWrite("Sessions expired ........: " & $aInfo[36])
MemoWrite("Connections made ........: " & $aInfo[37])
MemoWrite("Connections failed ......: " & $aInfo[38])
MemoWrite("Incomplete requests .....: " & $aInfo[39])
; Loop until the user exits.
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
EndFunc ;==>Example
; Write message to memo
Func MemoWrite($sMessage = "")
GUICtrlSetData($g_idMemo, $sMessage & @CRLF, 1)
EndFunc ;==>MemoWrite