INetFwRemoteAdminSettings
COMIDispatch (デュアル)comobj 経由でメソッド名による遅延バインド呼び出しができます(vtableインデックス不要)。公式ドキュメント
INetFwRemoteAdminSettings インターフェイスは、リモート管理を制御する設定へのアクセスを提供します。
解説(Remarks)
このインターフェイスの インスタンスは、INetFwProfile インターフェイスの RemoteAdminSettings プロパティを通じて取得します。
すべての構成変更は 直ちに有効になります。
メソッド 8
vtbl = vtable インデックス(0始まり)。IDispatch 実装のため HSP ではメソッド名でも呼べます(上記)。低レベルの index 呼び出し用に vtbl も掲載。0〜2 は IUnknown。
IP バージョンを指定します。(INetFwRemoteAdminSettings.get_IpVersion)
| ipVersion | NET_FW_IP_VERSION* | out | リモート管理に適用される IP バージョンを示す NET_FW_IP_VERSION 列挙値を受け取るポインタである。 |
解説(Remarks)
これは、リモート管理が許可される IP バージョンです。
NET_FW_IP_VERSION_ANY のみがサポートされます。
IP バージョンを指定します。(INetFwRemoteAdminSettings.put_IpVersion)
| ipVersion | NET_FW_IP_VERSION | in | リモート管理に適用する IP バージョンを示す NET_FW_IP_VERSION 列挙値を指定する。 |
解説(Remarks)
これは、リモート管理が許可される IP バージョンです。
NET_FW_IP_VERSION_ANY のみがサポートされます。
リモート管理を許可するネットワークスコープを制御します。(Get)
| scope | NET_FW_SCOPE* | out | リモート管理が許可されるネットワークスコープを示す NET_FW_SCOPE 列挙値を受け取るポインタである。 |
解説(Remarks)
Scope プロパティを設定する際に有効なのは、NET_FW_SCOPE_ALL と NET_FW_SCOPE_LOCAL_SUBNET のみです。
新しいポートの既定値は NET_FW_SCOPE_ALL です。
カスタムスコープを作成するには、このインターフェイスの RemoteAddresses プロパティを使用します。
リモート管理を許可するネットワークスコープを制御します。(Put)
| scope | NET_FW_SCOPE | in | リモート管理を許可するネットワークスコープを示す NET_FW_SCOPE 列挙値を指定する。 |
解説(Remarks)
Scope プロパティを設定する際に有効なのは、NET_FW_SCOPE_ALL と NET_FW_SCOPE_LOCAL_SUBNET のみです。
新しいポートの既定値は NET_FW_SCOPE_ALL です。
カスタムスコープを作成するには、このインターフェイスの RemoteAddresses プロパティを使用します。
リモート管理を許可するリモートアドレスの集合を指定します。(Get)
| remoteAddrs | LPWSTR* | out | リモート管理を許可するリモートアドレスの一覧を表す文字列(BSTR)を受け取るポインタへのポインタである。 |
解説(Remarks)
remoteAddrs パラメーターは、アプリケーションがトラフィックを待ち受けできるリモートアドレスを指定する、1 つ以上のカンマ区切りトークンで構成されます。既定値は "*" です。
有効なトークン:
- "*": 任意のリモートアドレス。指定する場合は、これが唯一のトークンでなければなりません。
- "LocalSubnet": 大文字小文字は区別されません。複数回指定しても効果はありません。
- サブネット: サブネットマスク表記またはネットワークプレフィックス表記のいずれかで指定できます。サブネットマスクもネットワークプレフィックスも指定しない場合、サブネットマスクは既定で 255.255.255.255 になります。有効なサブネットの例: 10.0.0.2/255.0.0.0 10.0.0.2/8 10.0.0.2
- Windows Vista: 有効な IPv6 アドレス。
- Windows Vista: "開始アドレス - 終了アドレス" 形式の IPv4 アドレス範囲。
- Windows Vista: "開始アドレス - 終了アドレス" 形式の IPv6 アドレス範囲。
リモート管理を許可するリモートアドレスの集合を指定します。(Put)
| remoteAddrs | LPWSTR | in | リモート管理を許可するリモートアドレスの一覧を表す文字列(BSTR)を指定する。 |
解説(Remarks)
remoteAddrs パラメーターは、アプリケーションがトラフィックを待ち受けできるリモートアドレスを指定する、1 つ以上のカンマ区切りトークンで構成されます。既定値は "*" です。
有効なトークン:
- "*": 任意のリモートアドレス。指定する場合は、これが唯一のトークンでなければなりません。
- "LocalSubnet": 大文字小文字は区別されません。複数回指定しても効果はありません。
- サブネット: サブネットマスク表記またはネットワークプレフィックス表記のいずれかで指定できます。サブネットマスクもネットワークプレフィックスも指定しない場合、サブネットマスクは既定で 255.255.255.255 になります。有効なサブネットの例: 10.0.0.2/255.0.0.0 10.0.0.2/8 10.0.0.2
- Windows Vista: 有効な IPv6 アドレス。
- Windows Vista: "開始アドレス - 終了アドレス" 形式の IPv4 アドレス範囲。
- Windows Vista: "開始アドレス - 終了アドレス" 形式の IPv6 アドレス範囲。
リモート管理が有効かどうかを示します。(Get)
| enabled | VARIANT_BOOL* | out | リモート管理が有効かどうかを示すブール値(VARIANT_BOOL)を受け取るポインタである。 |
リモート管理が有効かどうかを示します。(Put)
| enabled | VARIANT_BOOL | in | リモート管理を有効にするかどうかを示すブール値(VARIANT_BOOL)を指定する。 |
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
#define global IID_INetFwRemoteAdminSettings "{D4BECDDF-6F73-4A83-B832-9C66874CD20E}" #usecom global INetFwRemoteAdminSettings IID_INetFwRemoteAdminSettings "{}" #comfunc global INetFwRemoteAdminSettings_get_IpVersion 7 var #comfunc global INetFwRemoteAdminSettings_put_IpVersion 8 int #comfunc global INetFwRemoteAdminSettings_get_Scope 9 var #comfunc global INetFwRemoteAdminSettings_put_Scope 10 int #comfunc global INetFwRemoteAdminSettings_get_RemoteAddresses 11 var #comfunc global INetFwRemoteAdminSettings_put_RemoteAddresses 12 wstr #comfunc global INetFwRemoteAdminSettings_get_Enabled 13 var #comfunc global INetFwRemoteAdminSettings_put_Enabled 14 int ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。#define global IID_INetFwRemoteAdminSettings "{D4BECDDF-6F73-4A83-B832-9C66874CD20E}" #usecom global INetFwRemoteAdminSettings IID_INetFwRemoteAdminSettings "{}" #comfunc global INetFwRemoteAdminSettings_get_IpVersion 7 sptr #comfunc global INetFwRemoteAdminSettings_put_IpVersion 8 int #comfunc global INetFwRemoteAdminSettings_get_Scope 9 sptr #comfunc global INetFwRemoteAdminSettings_put_Scope 10 int #comfunc global INetFwRemoteAdminSettings_get_RemoteAddresses 11 sptr #comfunc global INetFwRemoteAdminSettings_put_RemoteAddresses 12 wstr #comfunc global INetFwRemoteAdminSettings_get_Enabled 13 sptr #comfunc global INetFwRemoteAdminSettings_put_Enabled 14 int ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。