共用方式為


MIB_TCP6ROW_OWNER_PID 結構 (tcpmib.h)

MIB_TCP6ROW_OWNER_PID結構包含資訊,描述與特定進程識別碼相關聯的 IPv6 TCP 連線, (PID) 。

語法

typedef struct _MIB_TCP6ROW_OWNER_PID {
  UCHAR ucLocalAddr[16];
  DWORD dwLocalScopeId;
  DWORD dwLocalPort;
  UCHAR ucRemoteAddr[16];
  DWORD dwRemoteScopeId;
  DWORD dwRemotePort;
  DWORD dwState;
  DWORD dwOwningPid;
} MIB_TCP6ROW_OWNER_PID, *PMIB_TCP6ROW_OWNER_PID;

成員

ucLocalAddr[16]

類型: UCHAR[16]

本機電腦上 TCP 連線之本機端點的 IPv6 位址。 值為零表示接聽程式可以接受任何介面上的連線。

dwLocalScopeId

類型: DWORD

本機 IPv6 位址的網路位元組順序範圍識別碼。

dwLocalPort

類型: DWORD

本機電腦上 TCP 連線之本機端點的網路位元組順序埠號碼。

ucRemoteAddr[16]

類型: UCHAR[16]

遠端電腦上 TCP 連線之遠端端點的 IPv6 位址。 當 dwState 成員 MIB_TCP_STATE_LISTEN時,這個值就沒有意義。

dwRemoteScopeId

類型: DWORD

遠端 IPv6 位址的網路位元組順序範圍識別碼。

dwRemotePort

類型: DWORD

遠端電腦上 TCP 連線遠端端點的網路位元組順序埠號碼。

dwState

類型: DWORD

TCP 連線的狀態。 這個成員可以是Tcpmib.h標頭檔中所定義之MIB_TCP_STATE列舉中的其中一個值。 請注意, Tcpmib.h 標頭檔會自動包含在 Iprtrmib.h中,該檔案會自動包含在 Iphlpapi.h 標頭檔中。 不應該直接使用 Tcpmib.hIprtrmib.h 標頭檔。

意義
MIB_TCP_STATE_CLOSED
1
TCP 連線處於 CLOSED 狀態,完全不代表任何線上狀態。
MIB_TCP_STATE_LISTEN
2
TCP 連線處於 LISTEN 狀態,等候來自任何遠端 TCP 和埠的連線要求。
MIB_TCP_STATE_SYN_SENT
3
TCP 連線處於 SYN-SENT 狀態,在傳送連線要求之後 (SYN 封包) 等候相符的連線要求。
MIB_TCP_STATE_SYN_RCVD
4
TCP 連線處於 SYN-RECEIVED 狀態,在收到並傳送連線要求之後,等候確認連線要求通知 (SYN 封包) 。
MIB_TCP_STATE_ESTAB
5
TCP 連線處於 ESTABLISHED 狀態,表示開啟的連接,接收的資料可以傳遞給使用者。 這是 TCP 連線資料傳輸階段的正常狀態。
MIB_TCP_STATE_FIN_WAIT1
6
TCP 連線是 FIN-WAIT-1 狀態,正在等候遠端 TCP 的連線終止要求,或先前傳送之連線終止要求的通知。
MIB_TCP_STATE_FIN_WAIT2
7
TCP 連線是 FIN-WAIT-1 狀態,正在等候遠端 TCP 的連線終止要求。
MIB_TCP_STATE_CLOSE_WAIT
8
TCP 連線處於 CLOSE-WAIT 狀態,正在等候來自本機使用者的連線終止要求。
MIB_TCP_STATE_CLOSING
9
TCP 連線處於 CLOSING 狀態,正在等候遠端 TCP 的連線終止要求通知。
MIB_TCP_STATE_LAST_ACK
10
TCP 連線處於 LAST-ACK 狀態,正在等候先前傳送至遠端 TCP (的連線終止要求通知,其中包含其連線終止要求的通知) 。
MIB_TCP_STATE_TIME_WAIT
11
TCP 連線處於 TIME-WAIT 狀態,等候足夠的時間傳遞,以確保遠端 TCP 收到其連線終止要求的通知。
MIB_TCP_STATE_DELETE_TCB
12
TCP 連線處於刪除 TCB 狀態,代表刪除傳輸控制區塊 (TCB) ,這是用來維護每個 TCP 專案資訊的資料結構。

dwOwningPid

類型: DWORD

發出此 TCP 連線之內容系結之本機進程的 PID。

備註

TCP_TABLE_CLASS 列舉呼叫GetExtendedTcpTable傳回MIB_TCP6TABLE_OWNER_PID結構,並將TableClass參數設定為TCP_TABLE_OWNER_PID_LISTENERTCP_TABLE_OWNER_PID_CONNECTIONS或TCP_TABLE_OWNER_PID_ALL,並將ulAf參數設定為AF_INET6MIB_TCP6TABLE_OWNER_PID結構包含MIB_TCP6ROW_OWNER_PID結構的陣列。

dwState成員表示 TCP 狀態圖中的 TCP 專案狀態。 TCP 連線會在其存留期間透過一系列狀態進行。 這些狀態包括:LISTEN、SYN-SENT、SYN-RECEIVED、ESTABLISHED、FIN-WAIT-1、FIN-WAIT-2、CLOSE-WAIT、CLOSE、LAST-ACK、TIME-WAIT 和虛構狀態 CLOSED。 CLOSED 狀態是虛構的,因為它代表沒有傳輸控制區塊時的狀態,因此沒有連線。 TCP 通訊協定會在 RFC 793 中說明。 如需詳細資訊,請參閱http://www.ietf.org/rfc/rfc793.txt

dwLocalPortdwRemotePort成員會依網路位元組順序排列。 若要使用 dwLocalPortdwRemotePort 成員,可能需要 Windows Sockets 或類似函式中的 ntohsinet_ntoa 函式。

dwLocalScopeIddwRemoteScopeId成員會依網路位元組順序排列。 若要使用 dwLocalScopeIddwRemoteScopeId 成員,可能需要 Windows Sockets 或類似函式中的 ntohlinet_ntoa 函式。

ucLocalAddrucRemoteAddr成員會以網路位元組順序儲存在字元陣列中。 RtlIpv6AddressToStringRtlIpv6AddressToStringEx函式可用來將ucLocalAddrucRemoteAddr成員中的 IPv6 位址轉換成字串,而不需載入 Windows Sockets DLL。

在 Microsoft Windows 軟體發展工具組 (SDK) 針對 Windows Vista 和更新版本發行,標頭檔的組織已變更。 這個結構定義于 Tcpmib.h 標頭檔中,而不是 在 Iprtrmib.h 標頭檔中。 請注意, Tcpmib.h 標頭檔會自動包含在 Iprtrmib.h中,該檔案會自動包含在 Iphlpapi.h 標頭檔中。 不應該直接使用 Tcpmib.hIprtrmib.h 標頭檔。

規格需求

   
最低支援的用戶端 Windows Vista、Windows XP 與 SP2 [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008、Windows Server 2003 SP1 [僅限桌面應用程式]
標頭 tcpmib.h (包含 Iphlpapi.h)

另請參閱

GetExtendedTcpTable

RtlIpv6AddressToString

RtlIpv6AddressToStringEx

TCP_TABLE_CLASS

inet_ntoa

ntohl

ntohs