Win32 API 日本語リファレンス
ホームNetworkManagement.WindowsFirewall › INetFwRule

INetFwRule

COMIDispatch (デュアル)
IDispatch を実装(デュアルインターフェース)。HSP では comobj 経由でメソッド名による遅延バインド呼び出しができます(vtableインデックス不要)。
IIDaf230d27-baba-4e42-aced-f524f22cfce2継承元IDispatch呼び出し名前(IDispatch) または vtbl自前メソッド開始 vtbl7

公式ドキュメント

規則のプロパティにアクセスします。

解説(Remarks)

規則のプロパティを変更するたびに、Windows ファイアウォールはその規則をコミットし、正しさを検証します。そのため、規則を編集する際は特定の順序で手順を実行する必要があります。たとえば ICMP のファイアウォール規則を追加する場合は、先にプロトコルを ICMP に設定してから規則を追加しなければなりません。これらの手順を逆の順序で行うと、エラーが発生し変更内容は失われます。

TCP ポートの規則を編集して ICMP の規則に変換する場合は、まずポートを削除し、次にプロトコルを TCP から ICMP に変更してから、規則を追加します。

既存の規則を取得して変更するには、このインターフェイスのインスタンスを INetFwRules 経由で取得する必要があります。すべての構成変更は直ちに反映されます。

規則のプロパティにアクセスする際は、新しく追加した規則が適用されるまでにわずかな時間差が生じる場合があることに注意してください。

プロパティはファイアウォール規則の作成に使用します。多くのプロパティを利用することで、非常に細かく指定したファイアウォール規則を作成できます。

プロパティ 型と形式 制約
Name プレーンテキストの文字列。 必須。文字列に "|" を含めることはできず、"all" にすることもできません。
Description プレーンテキストの文字列。 省略可能。文字列に "|" を含めることはできません。
Grouping "@<dll 名>, <リソース文字列識別子>" という形式の文字列。 必須。
Enabled ブール値 (VARIANT_BOOLEAN)。 省略可能。何も指定しない場合の既定値は false (VARIANT_FALSE) です。
ApplicationName プレーンテキストの文字列。 省略可能。
ServiceName プレーンテキストの文字列。 省略可能。
LocalPorts ポート番号の一覧を含むプレーンテキストの文字列。"RPC" も有効な値です。 省略可能。
RemotePorts ポート番号の一覧を含むプレーンテキストの文字列。 省略可能。
LocalAddresses コンマ区切りの IPv4 および IPv6 アドレスの一覧を含むプレーンテキストの文字列。この一覧では範囲指定および "*" も使用できます。 省略可能。
RemoteAddresses コンマ区切りの IPv4 および IPv6 アドレスの一覧を含むプレーンテキストの文字列。この一覧では範囲指定および "*" も使用できます。 省略可能。
Protocol 数値。 省略可能。
put_Profiles "type, code" という形式の文字列値。複数の type と code の組を ";" で区切って 1 つの文字列に含めることができます。 省略可能。
Interfaces インターフェイスのフレンドリ名を格納した文字列の配列。 省略可能。
InterfaceTypes 文字列値。複数のインターフェイスの種類を "," で区切って 1 つの文字列に含めることができます。指定できる値は "RemoteAccess"、"Wireless"、"Lan"、"All" です。 省略可能。
Direction 列挙値。 省略可能。
Action 列挙値。 省略可能。
EdgeTraversal ブール値 (VARIANT_BOOLEAN)。 省略可能。
Profiles 列挙値。 省略可能。

各プロパティの詳細については、対応するトピックを参照してください。

メソッド 36

vtbl = vtable インデックス(0始まり)。IDispatch 実装のため HSP ではメソッド名でも呼べます(上記)。低レベルの index 呼び出し用に vtbl も掲載。0〜2 は IUnknown。

vtbl 7 HRESULT get_Name(LPWSTR* name)

この規則のフレンドリ名を指定します。(Get)

nameLPWSTR*outファイアウォール規則の名前を受け取る文字列へのポインタである。

解説(Remarks)

このプロパティは必須です。文字列に "|" 文字を含めることはできません。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

vtbl 8 HRESULT put_Name(LPWSTR name)

この規則のフレンドリ名を指定します。(Put)

nameLPWSTRinファイアウォール規則に設定する名前を指定する。

解説(Remarks)

このプロパティは必須です。文字列に "|" 文字を含めることはできません。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

vtbl 9 HRESULT get_Description(LPWSTR* desc)

この規則の説明を指定します。(Get)

descLPWSTR*outファイアウォール規則の説明文を受け取る文字列へのポインタである。

解説(Remarks)

このプロパティは省略可能です。文字列に "|" 文字を含めることはできません。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

vtbl 10 HRESULT put_Description(LPWSTR desc)

この規則の説明を指定します。(Put)

descLPWSTRinファイアウォール規則に設定する説明文を指定する。

解説(Remarks)

このプロパティは省略可能です。文字列に "|" 文字を含めることはできません。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

vtbl 11 HRESULT get_ApplicationName(LPWSTR* imageFileName)

この規則が適用されるアプリケーションのフレンドリ名を指定します。(Get)

imageFileNameLPWSTR*out規則が適用されるアプリケーションの実行可能イメージファイルへのフルパスを受け取る文字列へのポインタである。

解説(Remarks)

このプロパティは省略可能です。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

vtbl 12 HRESULT put_ApplicationName(LPWSTR imageFileName)

この規則が適用されるアプリケーションのフレンドリ名を指定します。(Put)

imageFileNameLPWSTRin規則を適用するアプリケーションの実行可能イメージファイルへのフルパスを指定する。

解説(Remarks)

このプロパティは省略可能です。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

vtbl 13 HRESULT get_ServiceName(LPWSTR* serviceName)

アプリケーションのサービス名プロパティを指定します。(Get)

serviceNameLPWSTR*out規則が適用される Windows サービスの短いサービス名を受け取る文字列へのポインタである。

解説(Remarks)

このプロパティは省略可能です。serviceName の値が "*" の場合は、アプリケーションではなくサービスがトラフィックを送受信していなければならないことを示します。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

vtbl 14 HRESULT put_ServiceName(LPWSTR serviceName)

アプリケーションのサービス名プロパティを指定します。(Put)

serviceNameLPWSTRin規則を適用する Windows サービスの短いサービス名を指定する。すべてのサービスを対象にする場合は空文字列を指定する。

解説(Remarks)

このプロパティは省略可能です。serviceName の値が "*" の場合は、アプリケーションではなくサービスがトラフィックを送受信していなければならないことを示します。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

vtbl 15 HRESULT get_Protocol(INT* protocol)

この規則の IP プロトコルを指定します。(Get)

protocolINT*out規則が対象とする IP プロトコル番号 (TCP は 6、UDP は 17 など) を受け取る整数へのポインタである。

解説(Remarks)

このプロパティは省略可能です。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

Protocol プロパティは LocalPorts プロパティや RemotePorts プロパティより先に設定する必要があります。そうしないとエラーが返されます。

プロトコル番号の一覧は IANA の Web サイトで参照できます。

vtbl 16 HRESULT put_Protocol(INT protocol)

この規則の IP プロトコルを指定します。(Put)

protocolINTin規則が対象とする IP プロトコル番号を指定する。

解説(Remarks)

このプロパティは省略可能です。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

Protocol プロパティは LocalPorts プロパティや RemotePorts プロパティより先に設定する必要があります。そうしないとエラーが返されます。

プロトコル番号の一覧は IANA の Web サイトで参照できます。

vtbl 17 HRESULT get_LocalPorts(LPWSTR* portNumbers)

この規則のローカルポートの一覧を指定します。(Get)

portNumbersLPWSTR*out規則が対象とするローカルポート番号 (カンマ区切り) を受け取る文字列へのポインタである。

解説(Remarks)

このプロパティは省略可能です。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

Protocol プロパティは LocalPorts プロパティより先に設定する必要があります。そうしないとエラーが返されます。

vtbl 18 HRESULT put_LocalPorts(LPWSTR portNumbers)

この規則のローカルポートの一覧を指定します。(Put)

portNumbersLPWSTRin規則が対象とするローカルポート番号をカンマ区切りの文字列で指定する。

解説(Remarks)

このプロパティは省略可能です。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

Protocol プロパティは LocalPorts プロパティより先に設定する必要があります。そうしないとエラーが返されます。

vtbl 19 HRESULT get_RemotePorts(LPWSTR* portNumbers)

この規則のリモートポートの一覧を指定します。(Get)

portNumbersLPWSTR*out規則が対象とするリモートポート番号 (カンマ区切り) を受け取る文字列へのポインタである。

解説(Remarks)

このプロパティは省略可能です。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

Protocol プロパティは RemotePorts プロパティより先に設定する必要があります。そうしないとエラーが返されます。

vtbl 20 HRESULT put_RemotePorts(LPWSTR portNumbers)

この規則のリモートポートの一覧を指定します。(Put)

portNumbersLPWSTRin規則が対象とするリモートポート番号をカンマ区切りの文字列で指定する。

解説(Remarks)

このプロパティは省略可能です。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

Protocol プロパティは RemotePorts プロパティより先に設定する必要があります。そうしないとエラーが返されます。

vtbl 21 HRESULT get_LocalAddresses(LPWSTR* localAddrs)

この規則のローカルアドレスの一覧を指定します。(Get)

localAddrsLPWSTR*out規則が対象とするローカル IP アドレス (カンマ区切り) を受け取る文字列へのポインタである。

解説(Remarks)

このプロパティは省略可能です。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

localAddrs パラメーターは、アプリケーションがトラフィックを待ち受けるローカルアドレスを指定する、1 つ以上のコンマ区切りトークンで構成されます。既定値は "*" です。有効なトークンは次のとおりです。

vtbl 22 HRESULT put_LocalAddresses(LPWSTR localAddrs)

この規則のローカルアドレスの一覧を指定します。(Put)

localAddrsLPWSTRin規則が対象とするローカル IP アドレスをカンマ区切りの文字列で指定する。

解説(Remarks)

このプロパティは省略可能です。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

localAddrs パラメーターは、アプリケーションがトラフィックを待ち受けるローカルアドレスを指定する、1 つ以上のコンマ区切りトークンで構成されます。既定値は "*" です。有効なトークンは次のとおりです。

vtbl 23 HRESULT get_RemoteAddresses(LPWSTR* remoteAddrs)

この規則のリモートアドレスの一覧を指定します。(Get)

remoteAddrsLPWSTR*out規則が対象とするリモート IP アドレス (カンマ区切り) を受け取る文字列へのポインタである。

解説(Remarks)

このプロパティは省略可能です。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

remoteAddrs パラメーターは、アプリケーションがトラフィックを待ち受けるリモートアドレスを指定する、1 つ以上のコンマ区切りトークンで構成されます。既定値は "*" です。有効なトークンは次のとおりです。

vtbl 24 HRESULT put_RemoteAddresses(LPWSTR remoteAddrs)

この規則のリモートアドレスの一覧を指定します。(Put)

remoteAddrsLPWSTRin規則が対象とするリモート IP アドレスをカンマ区切りの文字列で指定する。

解説(Remarks)

このプロパティは省略可能です。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

remoteAddrs パラメーターは、アプリケーションがトラフィックを待ち受けるリモートアドレスを指定する、1 つ以上のコンマ区切りトークンで構成されます。既定値は "*" です。有効なトークンは次のとおりです。

vtbl 25 HRESULT get_IcmpTypesAndCodes(LPWSTR* icmpTypesAndCodes)

この規則の ICMP タイプおよびコードの一覧を指定します。(Get)

icmpTypesAndCodesLPWSTR*out規則が対象とする ICMP のタイプとコードの一覧を受け取る文字列へのポインタである。

解説(Remarks)

このプロパティは省略可能です。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

icmpTypesAndCodes パラメーターは、セミコロンで区切られた ICMP タイプとコードの一覧です。"*" はすべての ICMP タイプとコードを示します。

vtbl 26 HRESULT put_IcmpTypesAndCodes(LPWSTR icmpTypesAndCodes)

この規則の ICMP タイプおよびコードの一覧を指定します。(Put)

icmpTypesAndCodesLPWSTRin規則が対象とする ICMP のタイプとコードの一覧を文字列で指定する。

解説(Remarks)

このプロパティは省略可能です。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

icmpTypesAndCodes パラメーターは、セミコロンで区切られた ICMP タイプとコードの一覧です。"*" はすべての ICMP タイプとコードを示します。

vtbl 27 HRESULT get_Direction(NET_FW_RULE_DIRECTION* dir)

この規則が適用されるトラフィックの方向を指定します。(Get)

dirNET_FW_RULE_DIRECTION*out規則の方向 (受信または送信) を表す NET_FW_RULE_DIRECTION 値を受け取るポインタである。

解説(Remarks)

このプロパティは省略可能です。指定しない場合、既定値は in (受信) です。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

vtbl 28 HRESULT put_Direction(NET_FW_RULE_DIRECTION dir)

この規則が適用されるトラフィックの方向を指定します。(Put)

dirNET_FW_RULE_DIRECTIONin規則の方向 (受信または送信) を表す NET_FW_RULE_DIRECTION 値を指定する。

解説(Remarks)

このプロパティは省略可能です。指定しない場合、既定値は in (受信) です。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

vtbl 29 HRESULT get_Interfaces(VARIANT* interfaces)

この規則が適用されるインターフェイスの一覧を指定します。(Get)

interfacesVARIANT*out規則が適用されるネットワークインターフェイス名の配列を格納した VARIANT を受け取るポインタである。

解説(Remarks)

このプロパティは省略可能です。一覧に含まれるインターフェイスはフレンドリ名で表されます。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

vtbl 30 HRESULT put_Interfaces(VARIANT interfaces)

この規則が適用されるインターフェイスの一覧を指定します。(Put)

interfacesVARIANTin規則を適用するネットワークインターフェイス名の配列を格納した VARIANT を指定する。

解説(Remarks)

このプロパティは省略可能です。一覧に含まれるインターフェイスはフレンドリ名で表されます。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

vtbl 31 HRESULT get_InterfaceTypes(LPWSTR* interfaceTypes)

この規則が適用されるインターフェイスの種類の一覧を指定します。(Get)

interfaceTypesLPWSTR*out規則が適用されるインターフェイスの種類 (RemoteAccess、Wireless、Lan など、カンマ区切り) を受け取る文字列へのポインタである。

解説(Remarks)

このプロパティは省略可能です。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

このプロパティに指定できる値は "RemoteAccess"、"Wireless"、"Lan"、"All" です。複数のインターフェイスの種類を指定する場合は、文字列をコンマで区切る必要があります。

vtbl 32 HRESULT put_InterfaceTypes(LPWSTR interfaceTypes)

この規則が適用されるインターフェイスの種類の一覧を指定します。(Put)

interfaceTypesLPWSTRin規則を適用するインターフェイスの種類をカンマ区切りの文字列で指定する。すべてに適用する場合は "All" を指定する。

解説(Remarks)

このプロパティは省略可能です。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

このプロパティに指定できる値は "RemoteAccess"、"Wireless"、"Lan"、"All" です。複数のインターフェイスの種類を指定する場合は、文字列をコンマで区切る必要があります。

vtbl 33 HRESULT get_Enabled(VARIANT_BOOL* enabled)

規則を有効または無効にします。(Get)

enabledVARIANT_BOOL*out規則が現在有効かどうかを示す VARIANT_BOOL 値を受け取るポインタである。

解説(Remarks)

このプロパティは省略可能です。新しい規則は既定で無効になっています。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

vtbl 34 HRESULT put_Enabled(VARIANT_BOOL enabled)

規則を有効または無効にします。(Put)

enabledVARIANT_BOOLin規則を有効にするかどうかを示す VARIANT_BOOL 値を指定する。

解説(Remarks)

このプロパティは省略可能です。新しい規則は既定で無効になっています。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

vtbl 35 HRESULT get_Grouping(LPWSTR* context)

個々の規則が属するグループを指定します。(Get)

contextLPWSTR*out規則が属するグループ名 (グループ化文字列) を受け取る文字列へのポインタである。

解説(Remarks)

このプロパティは省略可能です。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

Grouping プロパティの使用を強く推奨します。これにより、複数の規則が Windows ファイアウォールのコントロールパネルで 1 行にまとめて表示されます。ユーザーは 1 回のクリックで複数の規則を有効または無効にできます。Grouping プロパティは間接文字列でも指定できます。この場合、Windows ファイアウォールのコントロールパネルの規則グループのプロパティに表示されるグループの説明も指定できます。たとえば、グループ文字列をインデックス 1005 の間接文字列 ("@yourresources.dll,-1005") で指定した場合、グループの説明はそれより 10000 大きいリソース文字列 "@youresources.dll,-11005" で指定できます。

"h" 形式の間接文字列を Windows Firewall with Advanced Security API のパラメーターとして渡す場合、対象のファイルは Windows の System32 ディレクトリ配下に配置するか、フルパスで指定する必要があります。さらに、Windows ファイアウォールサービスが文字列を読み取れるように、Local Service アカウントに読み取りアクセスを許可する安全なアクセス権をファイルに設定する必要があります。特権を持たないセキュリティプリンシパルによる文字列の改変を防ぐため、DLL への書き込みアクセスは Administrator アカウントにのみ許可してください。

vtbl 36 HRESULT put_Grouping(LPWSTR context)

個々の規則が属するグループを指定します。(Put)

contextLPWSTRin規則が属するグループ名 (グループ化文字列) を指定する。

解説(Remarks)

このプロパティは省略可能です。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

Grouping プロパティの使用を強く推奨します。これにより、複数の規則が Windows ファイアウォールのコントロールパネルで 1 行にまとめて表示されます。ユーザーは 1 回のクリックで複数の規則を有効または無効にできます。Grouping プロパティは間接文字列でも指定できます。この場合、Windows ファイアウォールのコントロールパネルの規則グループのプロパティに表示されるグループの説明も指定できます。たとえば、グループ文字列をインデックス 1005 の間接文字列 ("@yourresources.dll,-1005") で指定した場合、グループの説明はそれより 10000 大きいリソース文字列 "@youresources.dll,-11005" で指定できます。

"h" 形式の間接文字列を Windows Firewall with Advanced Security API のパラメーターとして渡す場合、対象のファイルは Windows の System32 ディレクトリ配下に配置するか、フルパスで指定する必要があります。さらに、Windows ファイアウォールサービスが文字列を読み取れるように、Local Service アカウントに読み取りアクセスを許可する安全なアクセス権をファイルに設定する必要があります。特権を持たないセキュリティプリンシパルによる文字列の改変を防ぐため、DLL への書き込みアクセスは Administrator アカウントにのみ許可してください。

vtbl 37 HRESULT get_Profiles(INT* profileTypesBitmask)

この規則が属するプロファイルを指定します。(Get)

profileTypesBitmaskINT*out規則が適用されるプロファイル種類のビットマスクを受け取る整数へのポインタである。

解説(Remarks)

このプロパティは省略可能です。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

vtbl 38 HRESULT put_Profiles(INT profileTypesBitmask)

この規則が属するプロファイルを指定します。(Put)

profileTypesBitmaskINTin規則を適用するプロファイル種類のビットマスクを指定する。

解説(Remarks)

このプロパティは省略可能です。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

vtbl 39 HRESULT get_EdgeTraversal(VARIANT_BOOL* enabled)

この規則でエッジトラバーサルが有効か無効かを示します。(Get)

enabledVARIANT_BOOL*outエッジトラバーサル (NAT 越えのトラフィックを許可するか) が有効かどうかを示す VARIANT_BOOL 値を受け取るポインタである。

解説(Remarks)

EdgeTraversal プロパティは、特定の受信トラフィックが Teredo トンネリング技術を用いて NAT やその他のエッジデバイスをトンネル経由で通過できることを示します。この設定が正しく機能するには、受信ファイアウォール規則の対象となるアプリケーションまたはサービスが IPv6 をサポートしている必要があります。この設定の主な用途は、ホスト上のリスナーを Teredo IPv6 アドレスによってグローバルにアドレス指定可能にすることです。

新しい規則では EdgeTraversal プロパティは既定で無効です。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

vtbl 40 HRESULT put_EdgeTraversal(VARIANT_BOOL enabled)

この規則でエッジトラバーサルが有効か無効かを示します。(Put)

enabledVARIANT_BOOLinエッジトラバーサルを有効にするかどうかを示す VARIANT_BOOL 値を指定する。

解説(Remarks)

EdgeTraversal プロパティは、特定の受信トラフィックが Teredo トンネリング技術を用いて NAT やその他のエッジデバイスをトンネル経由で通過できることを示します。この設定が正しく機能するには、受信ファイアウォール規則の対象となるアプリケーションまたはサービスが IPv6 をサポートしている必要があります。この設定の主な用途は、ホスト上のリスナーを Teredo IPv6 アドレスによってグローバルにアドレス指定可能にすることです。

新しい規則では EdgeTraversal プロパティは既定で無効です。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

vtbl 41 HRESULT get_Action(NET_FW_ACTION* action)

規則または既定の設定に対するアクションを指定します。(INetFwRule.get_Action)

actionNET_FW_ACTION*out規則のアクション (許可またはブロック) を表す NET_FW_ACTION 値を受け取るポインタである。

解説(Remarks)

このプロパティは省略可能です。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

vtbl 42 HRESULT put_Action(NET_FW_ACTION action)

規則または既定の設定に対するアクションを指定します。(INetFwRule.put_Action)

actionNET_FW_ACTIONin規則のアクション (許可またはブロック) を表す NET_FW_ACTION 値を指定する。

解説(Remarks)

このプロパティは省略可能です。

プロパティ変更に関する制約については、INetFwRule インターフェイスのページの「解説」セクションも参照してください。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_INetFwRule "{AF230D27-BABA-4E42-ACED-F524F22CFCE2}"
#usecom global INetFwRule IID_INetFwRule "{2C5BC43E-3369-4C33-AB0C-BE9469677AF4}"
#comfunc global INetFwRule_get_Name               7 var
#comfunc global INetFwRule_put_Name               8 wstr
#comfunc global INetFwRule_get_Description        9 var
#comfunc global INetFwRule_put_Description        10 wstr
#comfunc global INetFwRule_get_ApplicationName    11 var
#comfunc global INetFwRule_put_ApplicationName    12 wstr
#comfunc global INetFwRule_get_ServiceName        13 var
#comfunc global INetFwRule_put_ServiceName        14 wstr
#comfunc global INetFwRule_get_Protocol           15 var
#comfunc global INetFwRule_put_Protocol           16 int
#comfunc global INetFwRule_get_LocalPorts         17 var
#comfunc global INetFwRule_put_LocalPorts         18 wstr
#comfunc global INetFwRule_get_RemotePorts        19 var
#comfunc global INetFwRule_put_RemotePorts        20 wstr
#comfunc global INetFwRule_get_LocalAddresses     21 var
#comfunc global INetFwRule_put_LocalAddresses     22 wstr
#comfunc global INetFwRule_get_RemoteAddresses    23 var
#comfunc global INetFwRule_put_RemoteAddresses    24 wstr
#comfunc global INetFwRule_get_IcmpTypesAndCodes  25 var
#comfunc global INetFwRule_put_IcmpTypesAndCodes  26 wstr
#comfunc global INetFwRule_get_Direction          27 var
#comfunc global INetFwRule_put_Direction          28 int
#comfunc global INetFwRule_get_Interfaces         29 var
#comfunc global INetFwRule_put_Interfaces         30 int
#comfunc global INetFwRule_get_InterfaceTypes     31 var
#comfunc global INetFwRule_put_InterfaceTypes     32 wstr
#comfunc global INetFwRule_get_Enabled            33 var
#comfunc global INetFwRule_put_Enabled            34 int
#comfunc global INetFwRule_get_Grouping           35 var
#comfunc global INetFwRule_put_Grouping           36 wstr
#comfunc global INetFwRule_get_Profiles           37 var
#comfunc global INetFwRule_put_Profiles           38 int
#comfunc global INetFwRule_get_EdgeTraversal      39 var
#comfunc global INetFwRule_put_EdgeTraversal      40 int
#comfunc global INetFwRule_get_Action             41 var
#comfunc global INetFwRule_put_Action             42 int
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。