共用方式為


INetFwMgr::IsIcmpTypeAllowed 方法 (netfw.h)

[Windows 防火牆 API 可用於需求一節中指定的操作系統。 它在後續版本中可能會變更或無法使用。 針對 Windows Vista 和更新版本,建議使用 具有進階安全性 API 的 Windows 防火牆 。]

判斷是否允許指定的ICMP類型。

語法

HRESULT IsIcmpTypeAllowed(
  [in]  NET_FW_IP_VERSION ipVersion,
  [in]  BSTR              localAddress,
  [in]  BYTE              type,
  [out] VARIANT           *allowed,
  [out] VARIANT           *restricted
);

參數

[in] ipVersion

流量的IP版本。 這不能 NET_FW_IP_VERSION_ANY

流量的IP版本。 這不能 NET_FW_IP_VERSION_ANY

[in] localAddress

點數十進位 IPv4 位址或指定流量本機位址的 IPv6 十六進位位址。 一般而言,這是傳遞至系結的位址。 如果 localAddressNULL,函式會判斷是否允許所有介面的埠。

[in] type

ICMP 類型。 如需可能的ICMP類型清單,請參閱 ICMP類型號碼

[out] allowed

以值表示VARIANT_TRUE或VARIANT_FALSE是否至少允許某些本機介面和遠端位址的埠。

[out] restricted

以值表示VARIANT_TRUE或VARIANT_FALSE此埠是否封鎖某些本機介面或遠端位址。 例如,如果埠僅限於本機子網。

傳回值

C++

傳回碼 Description
E_ACCESSDENIED
作業因為許可權問題而停止。
E_INVALIDARG
方法失敗,因為參數無效。
E_OUTOFMEMORY
方法無法配置必要的記憶體。
E_POINTER
方法失敗,因為指標無效。
 

VB

如果方法成功,則會 S_OK傳回值。

如果方法失敗,傳回值就是下列其中一個錯誤碼。

傳回碼 Description
E_ACCESSDENIED
作業因為許可權問題而停止。
E_INVALIDARG
方法失敗,因為參數無效。
E_OUTOFMEMORY
方法無法配置必要的記憶體。
E_POINTER
方法失敗,因為指標無效。

備註

通常建議使用 INetFwPolicy2::IsRuleGroupEnabled 方法來取代此方法。

規格需求

需求
最低支援的用戶端 Windows Vista、Windows XP 與 SP2 [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 SP1 [僅限傳統型應用程式]
目標平台 Windows
標頭 netfw.h
Dll FirewallAPI.dll;使用SP2在 Windows XP 上 Hnetcfg.dll

另請參閱

INetFwMgr

NET_FW_IP_VERSION