0

Windows ファイアウォール API を処理するための基本的なライブラリを実装しています。プロパティで奇妙な結果に直面しINetFwPolicy2::ExcludedInterfacesました。除外されたインターフェイスを設定しFirewall.cpl、プロパティを読み取ったときに、いくつかの GUID の配列を取得しました。この GUID がどこから来たのかわかりません。インターフェイス GUID ではありません。すべてのインターフェイスを選択しWin32_NetworkAdapterましたが、そのような GUID はありません。また、この値を代入しようとすると、無効な引数を取得したか、エラーが見つかりませんでした。このコードは VBS で書かれたmsdn の例に基づいていますが、C で同じエラーが発生しても問題ありません。元の例も機能しませんでした。

Const NET_FW_PROFILE2_PRIVATE = 2

Set fwPolicy2 = CreateObject("HNetCfg.FwPolicy2")

CurrentProfiles = fwPolicy2.CurrentProfileTypes

if ( CurrentProfiles AND NET_FW_PROFILE2_PRIVATE ) then
   InterfaceArray = fwPolicy2.ExcludedInterfaces(NET_FW_PROFILE2_PRIVATE)

   if (IsEmpty(InterfaceArray)) then
      WScript.Echo( "InterfaceArray is Empty" )
   else
      WScript.Echo( Join(InterfaceArray) )
   end if

   fwPolicy2.ExcludedInterfaces(NET_FW_PROFILE2_PRIVATE) = InterfaceArray
end if
4

1 に答える 1