共用方式為


TCPMON Xcv 命令

本節描述當 呼叫 XcvDataXcvDataPort 函式與標準 TCP/IP 埠監視器通訊時,可指定 (TCPMON) 的命令。 每個命令都是由呼叫這些函式中的 pszDataName 字串所指定。 某些命令需要輸入緩衝區、輸出緩衝區或兩者。 這些函式的 pInputDatapOutputData 參數會保存這些緩衝區的位址。

出現在下列每個命令描述中的數據表會列出搭配命令使用的 XcvDataXcvDataPort 參數。 請注意, hXcv 參數 (兩個函式) 都未列出,也不列出 XcvData 函式的 pdwStatus 參數。

AddPort 命令

AddPort 命令會新增標準 TCP/IP 埠,可以是 LPR 埠或 RAW TCP/IP 埠。

XcvData 參數
pszDataName L“AddPort”
pInputData PORT_DATA_1 結構的位址
cbInputData sizeof (PORT_DATA_1)
pOutputData NULL
cbOutputData 0
azureOutputNeeded DWORD 的位址

如果 XcvData 可以新增埠,則會傳回NO_ERROR。 除了一般錯誤碼之外,如果用戶沒有足夠的許可權在伺服器上建立埠, XcvData 會傳回ERROR_ACCESS_DENIED。 此命令需要SERVER_ACCESS_ADMINISTER許可權。 如果 pInputData 參數為 NULL,函式會傳回ERROR_INVALID_DATA。 如果 pInputData-->dwVersion 不等於 1,函式會傳回ERROR_INVALID_LEVEL。

ConfigPort 命令

ConfigPort 命令會設定現有的標準 TCP/IP 埠監視埠。

XcvData 參數
pszDataName L“ConfigPort”
pInputData PORT_DATA_1 結構的位址
cbInputData sizeof (PORT_DATA_1)
pOutputData NULL
cbOutputData 0
azureOutputNeeded DWORD 的位址

如果 XcvData 可以設定埠,則會傳回NO_ERROR。 除了一般錯誤碼之外,如果呼叫端的許可權不足而無法執行要求, XcvData 會傳回ERROR_ACCESS_DENIED。 此命令需要SERVER_ACCESS_ADMINISTER許可權。 如果 pInputData 參數為 NULL,或 cbInputData 中的值小於必要,則函式會傳回ERROR_INVALID_DATA。 如果 pInputData-->dwVersion 不等於 1,函式會傳回ERROR_INVALID_LEVEL。

DeletePort 命令

DeletePort 命令會從標準 TCP/IP 埠監視器中刪除埠。

XcvData 參數
pszDataName L“DeletePort”
pInputData DELETE_PORT_DATA_1 結構的位址
cbInputData sizeof (DELETE_PORT_DATA_1)
pOutputData NULL
cbOutputData 0
azureOutputNeeded DWORD 的位址

如果已成功刪除埠,XcvData 會傳回NO_ERROR。 除了一般錯誤碼之外,如果呼叫端在伺服器上的許可權不足, XcvData 會傳回ERROR_ACCESS_DENIED。 此命令需要SERVER_ACCESS_ADMINISTER許可權。 如果 pInputData 參數為 NULL,或 cbInputData 參數小於必要,則函式會傳回ERROR_INVALID_DATA。 如果 pInputData-->dwVersion 不等於 1,函式會傳回ERROR_INVALID_LEVEL。

GetConfigInfo 命令

GetConfigInfo 命令會取得特定埠的組態資訊。 在此情況下,Xcv 數據句柄必須指向特定的標準 TCP/IP 埠監視埠,才能識別埠。

XcvData 參數
pszDataName L“GetConfigInfo”
pInputData CONFIG_INFO_DATA_1 結構的位址
cbInputData sizeof (CONFIG_INFO_DATA_1)
pOutputData PORT_DATA_1 結構的位址
cbOutputData sizeof (PORT_DATA_1)
azureOutputNeeded DWORD 的位址,其中包含 pOutputData 所指向之緩衝區所需的位元組數目

如果 XcvData 可以取得埠的組態資訊,則會傳回NO_ERROR。 如果 pInputDataNULL,或 cbInputData 小於必要,則函式會傳回ERROR_INVALID_DATA。 如果 pInputData-->dwVersion 不等於 1,函式會傳回ERROR_INVALID_LEVEL。 如果 cbOutputData 小於必要,則當ERROR_INVALID_PARAMETER為 null 時,函式會傳回 ERROR_INVALID_PARAMETER,而當ERROR_INSUFFICIENT_BUFFER為NULL 時,就會傳回ERROR_INSUFFICIENT_BUFFER。

HostAddress 命令

HostAddress 命令會取得印表機的主機名。

XcvData 參數
pszDataName L“HostAddress”
pInputData NULL
cbInputData 0
pOutputData 接收包含印表機主機名之字串的緩衝區位址
cbOutputData pOutputData 所指向的緩衝區大小
azureOutputNeeded DWORD 的位址,其中包含 pOutputData 所指向之緩衝區所需的位元組數目

如果 XcvData 可以取得印表機主機的名稱,則會傳回NO_ERROR。 如果 cbOutputData 小於必要,則當ERROR_INVALID_PARAMETER為 null 時,函式會傳回 ERROR_INVALID_PARAMETER,而當ERROR_INSUFFICIENT_BUFFER為NULL 時,就會傳回ERROR_INSUFFICIENT_BUFFER。 如果 pOutputDataNULL,函式會傳回ERROR_INVALID_PARAMETER。

IPAddress 命令

IPAddress 命令會取得印表機的IP位址。

XcvData 參數
pszDataName L“IPAddress”
pInputData NULL
cbInputData 0
pOutputData 接收包含印表機IP位址之字串的緩衝區位址
cbOutputData pOutputData 所指向的緩衝區大小
azureOutputNeeded DWORD 的位址,其中包含 pOutputData 所指向之緩衝區所需的位元組數目

如果 XcvData 可以取得印表機的 IP 位址,則會傳回NO_ERROR。 如果 cbOutputData 小於必要,則當ERROR_INVALID_PARAMETER為 null 時,函式會傳回 ERROR_INVALID_PARAMETER,而當ERROR_INSUFFICIENT_BUFFER為NULL 時,就會傳回ERROR_INSUFFICIENT_BUFFER。 如果 pOutputDataNULL,函式會傳回ERROR_INVALID_PARAMETER。

MonitorUI 命令

MonitorUI 命令會取得埠監視器 UI DLL 的名稱,該 DLL 提供 TCPMON 的介面。

XcvData 參數
pszDataName L“MonitorUI”
pInputData NULL
cbInputData 0
pOutputData 接收埠監視器使用者介面 DLL 名稱的緩衝區位址
cbOutputData 字串中包含埠監視器使用者介面 DLL 名稱的位元元組數目
azureOutputNeeded DWORD 的位址,其中包含 pOutputData 所指向之緩衝區所需的位元組數目

如果 XcvData 能夠取得使用者介面 DLL 的名稱,則會傳回NO_ERROR。 除了一般錯誤碼之外,如果呼叫端在伺服器上的許可權不足, XcvData 會傳回ERROR_ACCESS_DENIED。 此命令需要SERVER_ACCESS_ADMINISTER許可權。 如果 cbOutputData 小於必要,則當ERROR_INVALID_PARAMETER為 null 時,函式會傳回 ERROR_INVALID_PARAMETER,而當ERROR_INSUFFICIENT_BUFFER為NULL 時,就會傳回ERROR_INSUFFICIENT_BUFFER。 如果 pOutputDataNULL,函式會傳回ERROR_INVALID_PARAMETER。

SNMPCommunity

SNMPCommunity 命令會取得印表機的簡單網路管理通訊協定 (SNMP) 社群名稱。

XcvData 參數
pszDataName L“SNMPCommunity”
pInputData NULL
cbInputData 0
pOutputData 接收包含印表機SNMP社群之字串的緩衝區位址
cbOutputData 包含 pOutputData 參數所指向之字串所需的緩衝區大小
azureOutputNeeded DWORD 的位址,其中包含 pOutputData 所指向之緩衝區所需的位元組數目

如果 XcvData 可以取得印表機的 SNMP 社群名稱,則會傳回NO_ERROR。 如果 cbOutputData 小於必要,則當ERROR_INVALID_PARAMETER為 null 時,函式會傳回 ERROR_INVALID_PARAMETER,而當ERROR_INSUFFICIENT_BUFFER為NULL 時,就會傳回ERROR_INSUFFICIENT_BUFFER。 如果 pOutputDataNULL,函式會傳回ERROR_INVALID_PARAMETER。

SNMPDeviceIndex

SNMPDeviceIndex 命令會取得印表機的簡單網路管理通訊協定 (SNMP) 裝置索引。

XcvData 參數
pszDataName L“SNMPDeviceIndex”
pInputData NULL
cbInputData 0
pOutputData 接收裝置索引的緩衝區位址
cbOutputData sizeof (DWORD)
azureOutputNeeded 包含 sizeof (DWORD) 的 DWORD 位址

如果 XcvData 可以取得印表機的 SNMP 裝置索引,則會傳回NO_ERROR。 如果 cbOutputData 小於必要,則當ERROR_INVALID_PARAMETER為 null 時,函式會傳回 ERROR_INVALID_PARAMETER,而當ERROR_INSUFFICIENT_BUFFER為NULL 時,就會傳回ERROR_INSUFFICIENT_BUFFER。 如果 pOutputDataNULL,函式會傳回ERROR_INVALID_PARAMETER。

SNMPEnabled

SNMPEnabled 命令會判斷目前裝置是否啟用簡單網路管理通訊協定 (SNMP) 。

XcvData 參數
pszDataName L“SNMPEnabled”
pInputData NULL
cbInputData 0
pOutputData 接收 DWORD 值的緩衝區位址
cbOutputData sizeof (DWORD)
azureOutputNeeded 包含 sizeof (DWORD) 的 DWORD 位址

如果裝置已啟用SNMP,XcvData 會傳回NO_ERROR。 如果 cbOutputData 小於必要,則當ERROR_INVALID_PARAMETER為 null 時,函式會傳回 ERROR_INVALID_PARAMETER,而當ERROR_INSUFFICIENT_BUFFER為NULL 時,就會傳回ERROR_INSUFFICIENT_BUFFER。 如果 pOutputDataNULL,函式會傳回ERROR_INVALID_PARAMETER。