ホーム › Storage.FileSystem › STAT_WORKSTATION_0
STAT_WORKSTATION_0
構造体サイズ=各フィールドのバイト数(x64/x86 で異なる場合は x64/x86 と併記)。x64/x86 列=フィールドのバイトオフセット(HSPで dupptr / lpoke / wpoke 等に使用)。
フィールド
| フィールド | 型 | サイズ | x64 | x86 | 説明 |
|---|---|---|---|---|---|
| StatisticsStartTime | LONGLONG | 8 | +0 | +0 | 統計収集を開始した時刻(1601年起点の100ns単位)。 |
| BytesReceived | LONGLONG | 8 | +8 | +8 | ワークステーションが受信した総バイト数。 |
| SmbsReceived | LONGLONG | 8 | +16 | +16 | 受信したSMB(サーバーメッセージブロック)数。 |
| PagingReadBytesRequested | LONGLONG | 8 | +24 | +24 | ページング読み取りで要求された総バイト数。 |
| NonPagingReadBytesRequested | LONGLONG | 8 | +32 | +32 | 非ページング読み取りで要求された総バイト数。 |
| CacheReadBytesRequested | LONGLONG | 8 | +40 | +40 | キャッシュ読み取りで要求された総バイト数。 |
| NetworkReadBytesRequested | LONGLONG | 8 | +48 | +48 | ネットワーク経由で読み取り要求された総バイト数。 |
| BytesTransmitted | LONGLONG | 8 | +56 | +56 | ワークステーションが送信した総バイト数。 |
| SmbsTransmitted | LONGLONG | 8 | +64 | +64 | 送信したSMB数。 |
| PagingWriteBytesRequested | LONGLONG | 8 | +72 | +72 | ページング書き込みで要求された総バイト数。 |
| NonPagingWriteBytesRequested | LONGLONG | 8 | +80 | +80 | 非ページング書き込みで要求された総バイト数。 |
| CacheWriteBytesRequested | LONGLONG | 8 | +88 | +88 | キャッシュ書き込みで要求された総バイト数。 |
| NetworkWriteBytesRequested | LONGLONG | 8 | +96 | +96 | ネットワーク経由で書き込み要求された総バイト数。 |
| InitiallyFailedOperations | DWORD | 4 | +104 | +104 | 開始時点で失敗したネットワーク操作の数。 |
| FailedCompletionOperations | DWORD | 4 | +108 | +108 | 完了時に失敗したネットワーク操作の数。 |
| ReadOperations | DWORD | 4 | +112 | +112 | 実行された読み取り操作の総数。 |
| RandomReadOperations | DWORD | 4 | +116 | +116 | シーケンシャルでないランダム読み取り操作の数。 |
| ReadSmbs | DWORD | 4 | +120 | +120 | 読み取りに使用されたSMB数。 |
| LargeReadSmbs | DWORD | 4 | +124 | +124 | バッファサイズを超える大きな読み取りSMB数。 |
| SmallReadSmbs | DWORD | 4 | +128 | +128 | 全バッファの1/4未満の小さな読み取りSMB数。 |
| WriteOperations | DWORD | 4 | +132 | +132 | 実行された書き込み操作の総数。 |
| RandomWriteOperations | DWORD | 4 | +136 | +136 | シーケンシャルでないランダム書き込み操作の数。 |
| WriteSmbs | DWORD | 4 | +140 | +140 | 書き込みに使用されたSMB数。 |
| LargeWriteSmbs | DWORD | 4 | +144 | +144 | バッファサイズを超える大きな書き込みSMB数。 |
| SmallWriteSmbs | DWORD | 4 | +148 | +148 | 全バッファの1/4未満の小さな書き込みSMB数。 |
| RawReadsDenied | DWORD | 4 | +152 | +152 | 拒否されたraw読み取り要求の数。 |
| RawWritesDenied | DWORD | 4 | +156 | +156 | 拒否されたraw書き込み要求の数。 |
| NetworkErrors | DWORD | 4 | +160 | +160 | 発生したネットワークエラーの数。 |
| Sessions | DWORD | 4 | +164 | +164 | 確立されたセッションの数。 |
| FailedSessions | DWORD | 4 | +168 | +168 | 確立に失敗したセッションの数。 |
| Reconnects | DWORD | 4 | +172 | +172 | 再接続が行われた回数。 |
| CoreConnects | DWORD | 4 | +176 | +176 | Core(初期SMBダイアレクト)で確立した接続数。 |
| Lanman20Connects | DWORD | 4 | +180 | +180 | LAN Manager 2.0プロトコルで確立した接続数。 |
| Lanman21Connects | DWORD | 4 | +184 | +184 | LAN Manager 2.1プロトコルで確立した接続数。 |
| LanmanNtConnects | DWORD | 4 | +188 | +188 | Windows NT系プロトコルで確立した接続数。 |
| ServerDisconnects | DWORD | 4 | +192 | +192 | サーバー側から切断された回数。 |
| HungSessions | DWORD | 4 | +196 | +196 | 応答停止(ハング)したセッションの数。 |
| UseCount | DWORD | 4 | +200 | +200 | ネットワーク接続が使用された回数。 |
| FailedUseCount | DWORD | 4 | +204 | +204 | ネットワーク接続使用に失敗した回数。 |
| CurrentCommands | DWORD | 4 | +208 | +208 | 現在キューに保留中のネットワークコマンド数。 |
各言語での定義
#include <windows.h>
// STAT_WORKSTATION_0 (x64 216 / x86 216 バイト)
typedef struct STAT_WORKSTATION_0 {
LONGLONG StatisticsStartTime;
LONGLONG BytesReceived;
LONGLONG SmbsReceived;
LONGLONG PagingReadBytesRequested;
LONGLONG NonPagingReadBytesRequested;
LONGLONG CacheReadBytesRequested;
LONGLONG NetworkReadBytesRequested;
LONGLONG BytesTransmitted;
LONGLONG SmbsTransmitted;
LONGLONG PagingWriteBytesRequested;
LONGLONG NonPagingWriteBytesRequested;
LONGLONG CacheWriteBytesRequested;
LONGLONG NetworkWriteBytesRequested;
DWORD InitiallyFailedOperations;
DWORD FailedCompletionOperations;
DWORD ReadOperations;
DWORD RandomReadOperations;
DWORD ReadSmbs;
DWORD LargeReadSmbs;
DWORD SmallReadSmbs;
DWORD WriteOperations;
DWORD RandomWriteOperations;
DWORD WriteSmbs;
DWORD LargeWriteSmbs;
DWORD SmallWriteSmbs;
DWORD RawReadsDenied;
DWORD RawWritesDenied;
DWORD NetworkErrors;
DWORD Sessions;
DWORD FailedSessions;
DWORD Reconnects;
DWORD CoreConnects;
DWORD Lanman20Connects;
DWORD Lanman21Connects;
DWORD LanmanNtConnects;
DWORD ServerDisconnects;
DWORD HungSessions;
DWORD UseCount;
DWORD FailedUseCount;
DWORD CurrentCommands;
} STAT_WORKSTATION_0;using System;
using System.Runtime.InteropServices;
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)]
public struct STAT_WORKSTATION_0
{
public long StatisticsStartTime;
public long BytesReceived;
public long SmbsReceived;
public long PagingReadBytesRequested;
public long NonPagingReadBytesRequested;
public long CacheReadBytesRequested;
public long NetworkReadBytesRequested;
public long BytesTransmitted;
public long SmbsTransmitted;
public long PagingWriteBytesRequested;
public long NonPagingWriteBytesRequested;
public long CacheWriteBytesRequested;
public long NetworkWriteBytesRequested;
public uint InitiallyFailedOperations;
public uint FailedCompletionOperations;
public uint ReadOperations;
public uint RandomReadOperations;
public uint ReadSmbs;
public uint LargeReadSmbs;
public uint SmallReadSmbs;
public uint WriteOperations;
public uint RandomWriteOperations;
public uint WriteSmbs;
public uint LargeWriteSmbs;
public uint SmallWriteSmbs;
public uint RawReadsDenied;
public uint RawWritesDenied;
public uint NetworkErrors;
public uint Sessions;
public uint FailedSessions;
public uint Reconnects;
public uint CoreConnects;
public uint Lanman20Connects;
public uint Lanman21Connects;
public uint LanmanNtConnects;
public uint ServerDisconnects;
public uint HungSessions;
public uint UseCount;
public uint FailedUseCount;
public uint CurrentCommands;
}Imports System.Runtime.InteropServices
<StructLayout(LayoutKind.Sequential, CharSet:=CharSet.Unicode)>
Public Structure STAT_WORKSTATION_0
Public StatisticsStartTime As Long
Public BytesReceived As Long
Public SmbsReceived As Long
Public PagingReadBytesRequested As Long
Public NonPagingReadBytesRequested As Long
Public CacheReadBytesRequested As Long
Public NetworkReadBytesRequested As Long
Public BytesTransmitted As Long
Public SmbsTransmitted As Long
Public PagingWriteBytesRequested As Long
Public NonPagingWriteBytesRequested As Long
Public CacheWriteBytesRequested As Long
Public NetworkWriteBytesRequested As Long
Public InitiallyFailedOperations As UInteger
Public FailedCompletionOperations As UInteger
Public ReadOperations As UInteger
Public RandomReadOperations As UInteger
Public ReadSmbs As UInteger
Public LargeReadSmbs As UInteger
Public SmallReadSmbs As UInteger
Public WriteOperations As UInteger
Public RandomWriteOperations As UInteger
Public WriteSmbs As UInteger
Public LargeWriteSmbs As UInteger
Public SmallWriteSmbs As UInteger
Public RawReadsDenied As UInteger
Public RawWritesDenied As UInteger
Public NetworkErrors As UInteger
Public Sessions As UInteger
Public FailedSessions As UInteger
Public Reconnects As UInteger
Public CoreConnects As UInteger
Public Lanman20Connects As UInteger
Public Lanman21Connects As UInteger
Public LanmanNtConnects As UInteger
Public ServerDisconnects As UInteger
Public HungSessions As UInteger
Public UseCount As UInteger
Public FailedUseCount As UInteger
Public CurrentCommands As UInteger
End Structureimport ctypes
from ctypes import wintypes
class STAT_WORKSTATION_0(ctypes.Structure):
_fields_ = [
("StatisticsStartTime", ctypes.c_longlong),
("BytesReceived", ctypes.c_longlong),
("SmbsReceived", ctypes.c_longlong),
("PagingReadBytesRequested", ctypes.c_longlong),
("NonPagingReadBytesRequested", ctypes.c_longlong),
("CacheReadBytesRequested", ctypes.c_longlong),
("NetworkReadBytesRequested", ctypes.c_longlong),
("BytesTransmitted", ctypes.c_longlong),
("SmbsTransmitted", ctypes.c_longlong),
("PagingWriteBytesRequested", ctypes.c_longlong),
("NonPagingWriteBytesRequested", ctypes.c_longlong),
("CacheWriteBytesRequested", ctypes.c_longlong),
("NetworkWriteBytesRequested", ctypes.c_longlong),
("InitiallyFailedOperations", wintypes.DWORD),
("FailedCompletionOperations", wintypes.DWORD),
("ReadOperations", wintypes.DWORD),
("RandomReadOperations", wintypes.DWORD),
("ReadSmbs", wintypes.DWORD),
("LargeReadSmbs", wintypes.DWORD),
("SmallReadSmbs", wintypes.DWORD),
("WriteOperations", wintypes.DWORD),
("RandomWriteOperations", wintypes.DWORD),
("WriteSmbs", wintypes.DWORD),
("LargeWriteSmbs", wintypes.DWORD),
("SmallWriteSmbs", wintypes.DWORD),
("RawReadsDenied", wintypes.DWORD),
("RawWritesDenied", wintypes.DWORD),
("NetworkErrors", wintypes.DWORD),
("Sessions", wintypes.DWORD),
("FailedSessions", wintypes.DWORD),
("Reconnects", wintypes.DWORD),
("CoreConnects", wintypes.DWORD),
("Lanman20Connects", wintypes.DWORD),
("Lanman21Connects", wintypes.DWORD),
("LanmanNtConnects", wintypes.DWORD),
("ServerDisconnects", wintypes.DWORD),
("HungSessions", wintypes.DWORD),
("UseCount", wintypes.DWORD),
("FailedUseCount", wintypes.DWORD),
("CurrentCommands", wintypes.DWORD),
]#[repr(C)]
pub struct STAT_WORKSTATION_0 {
pub StatisticsStartTime: i64,
pub BytesReceived: i64,
pub SmbsReceived: i64,
pub PagingReadBytesRequested: i64,
pub NonPagingReadBytesRequested: i64,
pub CacheReadBytesRequested: i64,
pub NetworkReadBytesRequested: i64,
pub BytesTransmitted: i64,
pub SmbsTransmitted: i64,
pub PagingWriteBytesRequested: i64,
pub NonPagingWriteBytesRequested: i64,
pub CacheWriteBytesRequested: i64,
pub NetworkWriteBytesRequested: i64,
pub InitiallyFailedOperations: u32,
pub FailedCompletionOperations: u32,
pub ReadOperations: u32,
pub RandomReadOperations: u32,
pub ReadSmbs: u32,
pub LargeReadSmbs: u32,
pub SmallReadSmbs: u32,
pub WriteOperations: u32,
pub RandomWriteOperations: u32,
pub WriteSmbs: u32,
pub LargeWriteSmbs: u32,
pub SmallWriteSmbs: u32,
pub RawReadsDenied: u32,
pub RawWritesDenied: u32,
pub NetworkErrors: u32,
pub Sessions: u32,
pub FailedSessions: u32,
pub Reconnects: u32,
pub CoreConnects: u32,
pub Lanman20Connects: u32,
pub Lanman21Connects: u32,
pub LanmanNtConnects: u32,
pub ServerDisconnects: u32,
pub HungSessions: u32,
pub UseCount: u32,
pub FailedUseCount: u32,
pub CurrentCommands: u32,
}import "golang.org/x/sys/windows"
type STAT_WORKSTATION_0 struct {
StatisticsStartTime int64
BytesReceived int64
SmbsReceived int64
PagingReadBytesRequested int64
NonPagingReadBytesRequested int64
CacheReadBytesRequested int64
NetworkReadBytesRequested int64
BytesTransmitted int64
SmbsTransmitted int64
PagingWriteBytesRequested int64
NonPagingWriteBytesRequested int64
CacheWriteBytesRequested int64
NetworkWriteBytesRequested int64
InitiallyFailedOperations uint32
FailedCompletionOperations uint32
ReadOperations uint32
RandomReadOperations uint32
ReadSmbs uint32
LargeReadSmbs uint32
SmallReadSmbs uint32
WriteOperations uint32
RandomWriteOperations uint32
WriteSmbs uint32
LargeWriteSmbs uint32
SmallWriteSmbs uint32
RawReadsDenied uint32
RawWritesDenied uint32
NetworkErrors uint32
Sessions uint32
FailedSessions uint32
Reconnects uint32
CoreConnects uint32
Lanman20Connects uint32
Lanman21Connects uint32
LanmanNtConnects uint32
ServerDisconnects uint32
HungSessions uint32
UseCount uint32
FailedUseCount uint32
CurrentCommands uint32
}type
STAT_WORKSTATION_0 = record
StatisticsStartTime: Int64;
BytesReceived: Int64;
SmbsReceived: Int64;
PagingReadBytesRequested: Int64;
NonPagingReadBytesRequested: Int64;
CacheReadBytesRequested: Int64;
NetworkReadBytesRequested: Int64;
BytesTransmitted: Int64;
SmbsTransmitted: Int64;
PagingWriteBytesRequested: Int64;
NonPagingWriteBytesRequested: Int64;
CacheWriteBytesRequested: Int64;
NetworkWriteBytesRequested: Int64;
InitiallyFailedOperations: DWORD;
FailedCompletionOperations: DWORD;
ReadOperations: DWORD;
RandomReadOperations: DWORD;
ReadSmbs: DWORD;
LargeReadSmbs: DWORD;
SmallReadSmbs: DWORD;
WriteOperations: DWORD;
RandomWriteOperations: DWORD;
WriteSmbs: DWORD;
LargeWriteSmbs: DWORD;
SmallWriteSmbs: DWORD;
RawReadsDenied: DWORD;
RawWritesDenied: DWORD;
NetworkErrors: DWORD;
Sessions: DWORD;
FailedSessions: DWORD;
Reconnects: DWORD;
CoreConnects: DWORD;
Lanman20Connects: DWORD;
Lanman21Connects: DWORD;
LanmanNtConnects: DWORD;
ServerDisconnects: DWORD;
HungSessions: DWORD;
UseCount: DWORD;
FailedUseCount: DWORD;
CurrentCommands: DWORD;
end;const STAT_WORKSTATION_0 = extern struct {
StatisticsStartTime: i64,
BytesReceived: i64,
SmbsReceived: i64,
PagingReadBytesRequested: i64,
NonPagingReadBytesRequested: i64,
CacheReadBytesRequested: i64,
NetworkReadBytesRequested: i64,
BytesTransmitted: i64,
SmbsTransmitted: i64,
PagingWriteBytesRequested: i64,
NonPagingWriteBytesRequested: i64,
CacheWriteBytesRequested: i64,
NetworkWriteBytesRequested: i64,
InitiallyFailedOperations: u32,
FailedCompletionOperations: u32,
ReadOperations: u32,
RandomReadOperations: u32,
ReadSmbs: u32,
LargeReadSmbs: u32,
SmallReadSmbs: u32,
WriteOperations: u32,
RandomWriteOperations: u32,
WriteSmbs: u32,
LargeWriteSmbs: u32,
SmallWriteSmbs: u32,
RawReadsDenied: u32,
RawWritesDenied: u32,
NetworkErrors: u32,
Sessions: u32,
FailedSessions: u32,
Reconnects: u32,
CoreConnects: u32,
Lanman20Connects: u32,
Lanman21Connects: u32,
LanmanNtConnects: u32,
ServerDisconnects: u32,
HungSessions: u32,
UseCount: u32,
FailedUseCount: u32,
CurrentCommands: u32,
};type
STAT_WORKSTATION_0 {.bycopy.} = object
StatisticsStartTime: int64
BytesReceived: int64
SmbsReceived: int64
PagingReadBytesRequested: int64
NonPagingReadBytesRequested: int64
CacheReadBytesRequested: int64
NetworkReadBytesRequested: int64
BytesTransmitted: int64
SmbsTransmitted: int64
PagingWriteBytesRequested: int64
NonPagingWriteBytesRequested: int64
CacheWriteBytesRequested: int64
NetworkWriteBytesRequested: int64
InitiallyFailedOperations: uint32
FailedCompletionOperations: uint32
ReadOperations: uint32
RandomReadOperations: uint32
ReadSmbs: uint32
LargeReadSmbs: uint32
SmallReadSmbs: uint32
WriteOperations: uint32
RandomWriteOperations: uint32
WriteSmbs: uint32
LargeWriteSmbs: uint32
SmallWriteSmbs: uint32
RawReadsDenied: uint32
RawWritesDenied: uint32
NetworkErrors: uint32
Sessions: uint32
FailedSessions: uint32
Reconnects: uint32
CoreConnects: uint32
Lanman20Connects: uint32
Lanman21Connects: uint32
LanmanNtConnects: uint32
ServerDisconnects: uint32
HungSessions: uint32
UseCount: uint32
FailedUseCount: uint32
CurrentCommands: uint32struct STAT_WORKSTATION_0
{
long StatisticsStartTime;
long BytesReceived;
long SmbsReceived;
long PagingReadBytesRequested;
long NonPagingReadBytesRequested;
long CacheReadBytesRequested;
long NetworkReadBytesRequested;
long BytesTransmitted;
long SmbsTransmitted;
long PagingWriteBytesRequested;
long NonPagingWriteBytesRequested;
long CacheWriteBytesRequested;
long NetworkWriteBytesRequested;
uint InitiallyFailedOperations;
uint FailedCompletionOperations;
uint ReadOperations;
uint RandomReadOperations;
uint ReadSmbs;
uint LargeReadSmbs;
uint SmallReadSmbs;
uint WriteOperations;
uint RandomWriteOperations;
uint WriteSmbs;
uint LargeWriteSmbs;
uint SmallWriteSmbs;
uint RawReadsDenied;
uint RawWritesDenied;
uint NetworkErrors;
uint Sessions;
uint FailedSessions;
uint Reconnects;
uint CoreConnects;
uint Lanman20Connects;
uint Lanman21Connects;
uint LanmanNtConnects;
uint ServerDisconnects;
uint HungSessions;
uint UseCount;
uint FailedUseCount;
uint CurrentCommands;
}HSP用 定義
HSP3.7/3.8 は構造体機能が無いため4byte整数配列(dim)+peek/poke で操作(32/64bitでサイズ・位置が異なる場合はタブで分割)。IronHSP は NSTRUCT(#defstruct/stdim/->)で32/64bit共通。
; HSP3.7/3.8 は構造体機能が無いため、4byte整数の配列変数で操作します。(x64 レイアウト)
; STAT_WORKSTATION_0 サイズ: 216 バイト(x64)
dim st, 54 ; 4byte整数×54(構造体サイズ 216 / 4 切り上げ)
; StatisticsStartTime : LONGLONG (+0, 8byte) qpoke st,0,値 / qpeek(st,0) ※IronHSPのみ。3.7/3.8は lpoke st,0,下位 : lpoke st,4,上位
; BytesReceived : LONGLONG (+8, 8byte) qpoke st,8,値 / qpeek(st,8) ※IronHSPのみ。3.7/3.8は lpoke st,8,下位 : lpoke st,12,上位
; SmbsReceived : LONGLONG (+16, 8byte) qpoke st,16,値 / qpeek(st,16) ※IronHSPのみ。3.7/3.8は lpoke st,16,下位 : lpoke st,20,上位
; PagingReadBytesRequested : LONGLONG (+24, 8byte) qpoke st,24,値 / qpeek(st,24) ※IronHSPのみ。3.7/3.8は lpoke st,24,下位 : lpoke st,28,上位
; NonPagingReadBytesRequested : LONGLONG (+32, 8byte) qpoke st,32,値 / qpeek(st,32) ※IronHSPのみ。3.7/3.8は lpoke st,32,下位 : lpoke st,36,上位
; CacheReadBytesRequested : LONGLONG (+40, 8byte) qpoke st,40,値 / qpeek(st,40) ※IronHSPのみ。3.7/3.8は lpoke st,40,下位 : lpoke st,44,上位
; NetworkReadBytesRequested : LONGLONG (+48, 8byte) qpoke st,48,値 / qpeek(st,48) ※IronHSPのみ。3.7/3.8は lpoke st,48,下位 : lpoke st,52,上位
; BytesTransmitted : LONGLONG (+56, 8byte) qpoke st,56,値 / qpeek(st,56) ※IronHSPのみ。3.7/3.8は lpoke st,56,下位 : lpoke st,60,上位
; SmbsTransmitted : LONGLONG (+64, 8byte) qpoke st,64,値 / qpeek(st,64) ※IronHSPのみ。3.7/3.8は lpoke st,64,下位 : lpoke st,68,上位
; PagingWriteBytesRequested : LONGLONG (+72, 8byte) qpoke st,72,値 / qpeek(st,72) ※IronHSPのみ。3.7/3.8は lpoke st,72,下位 : lpoke st,76,上位
; NonPagingWriteBytesRequested : LONGLONG (+80, 8byte) qpoke st,80,値 / qpeek(st,80) ※IronHSPのみ。3.7/3.8は lpoke st,80,下位 : lpoke st,84,上位
; CacheWriteBytesRequested : LONGLONG (+88, 8byte) qpoke st,88,値 / qpeek(st,88) ※IronHSPのみ。3.7/3.8は lpoke st,88,下位 : lpoke st,92,上位
; NetworkWriteBytesRequested : LONGLONG (+96, 8byte) qpoke st,96,値 / qpeek(st,96) ※IronHSPのみ。3.7/3.8は lpoke st,96,下位 : lpoke st,100,上位
; InitiallyFailedOperations : DWORD (+104, 4byte) st.26 = 値 / 値 = st.26 (lpoke/lpeek も可)
; FailedCompletionOperations : DWORD (+108, 4byte) st.27 = 値 / 値 = st.27 (lpoke/lpeek も可)
; ReadOperations : DWORD (+112, 4byte) st.28 = 値 / 値 = st.28 (lpoke/lpeek も可)
; RandomReadOperations : DWORD (+116, 4byte) st.29 = 値 / 値 = st.29 (lpoke/lpeek も可)
; ReadSmbs : DWORD (+120, 4byte) st.30 = 値 / 値 = st.30 (lpoke/lpeek も可)
; LargeReadSmbs : DWORD (+124, 4byte) st.31 = 値 / 値 = st.31 (lpoke/lpeek も可)
; SmallReadSmbs : DWORD (+128, 4byte) st.32 = 値 / 値 = st.32 (lpoke/lpeek も可)
; WriteOperations : DWORD (+132, 4byte) st.33 = 値 / 値 = st.33 (lpoke/lpeek も可)
; RandomWriteOperations : DWORD (+136, 4byte) st.34 = 値 / 値 = st.34 (lpoke/lpeek も可)
; WriteSmbs : DWORD (+140, 4byte) st.35 = 値 / 値 = st.35 (lpoke/lpeek も可)
; LargeWriteSmbs : DWORD (+144, 4byte) st.36 = 値 / 値 = st.36 (lpoke/lpeek も可)
; SmallWriteSmbs : DWORD (+148, 4byte) st.37 = 値 / 値 = st.37 (lpoke/lpeek も可)
; RawReadsDenied : DWORD (+152, 4byte) st.38 = 値 / 値 = st.38 (lpoke/lpeek も可)
; RawWritesDenied : DWORD (+156, 4byte) st.39 = 値 / 値 = st.39 (lpoke/lpeek も可)
; NetworkErrors : DWORD (+160, 4byte) st.40 = 値 / 値 = st.40 (lpoke/lpeek も可)
; Sessions : DWORD (+164, 4byte) st.41 = 値 / 値 = st.41 (lpoke/lpeek も可)
; FailedSessions : DWORD (+168, 4byte) st.42 = 値 / 値 = st.42 (lpoke/lpeek も可)
; Reconnects : DWORD (+172, 4byte) st.43 = 値 / 値 = st.43 (lpoke/lpeek も可)
; CoreConnects : DWORD (+176, 4byte) st.44 = 値 / 値 = st.44 (lpoke/lpeek も可)
; Lanman20Connects : DWORD (+180, 4byte) st.45 = 値 / 値 = st.45 (lpoke/lpeek も可)
; Lanman21Connects : DWORD (+184, 4byte) st.46 = 値 / 値 = st.46 (lpoke/lpeek も可)
; LanmanNtConnects : DWORD (+188, 4byte) st.47 = 値 / 値 = st.47 (lpoke/lpeek も可)
; ServerDisconnects : DWORD (+192, 4byte) st.48 = 値 / 値 = st.48 (lpoke/lpeek も可)
; HungSessions : DWORD (+196, 4byte) st.49 = 値 / 値 = st.49 (lpoke/lpeek も可)
; UseCount : DWORD (+200, 4byte) st.50 = 値 / 値 = st.50 (lpoke/lpeek も可)
; FailedUseCount : DWORD (+204, 4byte) st.51 = 値 / 値 = st.51 (lpoke/lpeek も可)
; CurrentCommands : DWORD (+208, 4byte) st.52 = 値 / 値 = st.52 (lpoke/lpeek も可)
; ※4byte境界の整数は添字 st.N(N=オフセット/4)で読み書き可。それ以外は peek/poke 系を使用。; IronHSP は NSTRUCT(構造体)をサポート。32bit/64bit どちらでも同じコードで動作します。
#defstruct global STAT_WORKSTATION_0
#field int64 StatisticsStartTime
#field int64 BytesReceived
#field int64 SmbsReceived
#field int64 PagingReadBytesRequested
#field int64 NonPagingReadBytesRequested
#field int64 CacheReadBytesRequested
#field int64 NetworkReadBytesRequested
#field int64 BytesTransmitted
#field int64 SmbsTransmitted
#field int64 PagingWriteBytesRequested
#field int64 NonPagingWriteBytesRequested
#field int64 CacheWriteBytesRequested
#field int64 NetworkWriteBytesRequested
#field int InitiallyFailedOperations
#field int FailedCompletionOperations
#field int ReadOperations
#field int RandomReadOperations
#field int ReadSmbs
#field int LargeReadSmbs
#field int SmallReadSmbs
#field int WriteOperations
#field int RandomWriteOperations
#field int WriteSmbs
#field int LargeWriteSmbs
#field int SmallWriteSmbs
#field int RawReadsDenied
#field int RawWritesDenied
#field int NetworkErrors
#field int Sessions
#field int FailedSessions
#field int Reconnects
#field int CoreConnects
#field int Lanman20Connects
#field int Lanman21Connects
#field int LanmanNtConnects
#field int ServerDisconnects
#field int HungSessions
#field int UseCount
#field int FailedUseCount
#field int CurrentCommands
#endstruct
stdim st, STAT_WORKSTATION_0 ; NSTRUCT 変数を確保
st->StatisticsStartTime = 100
mes "StatisticsStartTime=" + st->StatisticsStartTime