- PR -

WindowsFWの例外設定をWSHでできないでしょうか?

1
投稿者投稿内容
SHIGU
会議室デビュー日: 2004/04/28
投稿数: 15
投稿日時: 2005-02-28 19:18
WindowsFWの例外設定をWSHでできないでしょうか?


キー名を"%windir%\system32\sessmgr.exe"にしたいのですが

FWKEY03 = "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\AuthorizedApplications\List\"
Sh.RegWrite FWKEY03 & "%windir%\system32\sessmgr.exe" , "%windir%\system32\sessmgr.exe:*:enabled:@xpsp2res.dll,-22019" , "REG_SZ"

のように実行すると、

キー名が"sessmgr.exe"となっていしまいます。
(%windir% - system32 - sessmgr.exe となってしまう。)


回避方法ご存知の方、ご教授願います。
ちゃっぴ
ぬし
会議室デビュー日: 2004/12/10
投稿数: 873
投稿日時: 2005-02-28 21:29
RegWrite Method これ私もはまりました。

結論からいうと、RegWrite MethodではEntryに
「\\」がついているものは扱えないようです。

回避策としては、WMIにStdRegProv Classがあるので
そいつを使用してやるとよいでしょう。

なお、WindowsFWを扱うということであれば、
ここら辺も参考になるでしょう。

Windows ファイアウォール
SHIGU
会議室デビュー日: 2004/04/28
投稿数: 15
投稿日時: 2005-03-01 11:16
やはり不可能ですか・・・

ちなみにWMIと言うのはVBS+WSH上では動作しないのでしょうか?
出来れば、VBS+WSHで実施したいのですが・・・
ちゃっぴ
ぬし
会議室デビュー日: 2004/12/10
投稿数: 873
投稿日時: 2005-03-01 21:26
引用:
ちなみにWMIと言うのはVBS+WSH上では動作しないのでしょうか?
出来れば、VBS+WSHで実施したいのですが・・・



とりあえず、多少でも情報が得られたなら、わからなくても
検索して理解するよう勤めてください。

Googleで検索すれば、このPageはすぐに見つかるはずです。

WMI スクリプト入門 : 第 1 部

あと、本家MSDNにもSampleがありますが、
StdRegProvを用いた簡単なSampleを書いておきます。

コード:


Sub EnumPrinters()
Dim objRegProv 'As Object
Dim strKeyPath 'As String
Dim vntValueNames 'As Variant
Dim vntValueTypes 'As Variant
Dim strValueName 'As String
Dim strValue 'As String
Dim i 'As Long

Const HKCU = &H80000001

Set objRegProv = _
GetObject("winmgmts:\\.\root\default:StdRegProv")
strKeyPath = _
"Software\Microsoft\Windows NT\CurrentVersion\PrinterPorts"
objRegProv.EnumValues HKCU, strKeyPath, _
vntValueNames, vntValueTypes

For i = 0 To UBound(vntValueNames)
strValueName = vntValueNames(i)
objRegProv.GetStringValue HKCU, strKeyPath, _
strValueName, strValue

WScript.Echo strValueName & " on " _
& Split(strValue, ",", -1, 0)(1)
Next
End Sub



[ メッセージ編集済み 編集者: ちゃっぴ 編集日時 2005-03-01 21:27 ]
1

スキルアップ/キャリアアップ(JOB@IT)