| - WMI Fun !! -|WMI Step|WMI Sample|Search|WMI Fun !! Groups|About WMI Fun !! | ||||||
| Top Page >> WMI Step >> VBSからWMIを使ってみよう | ||||||
|
VBSからWMIを使ってみよう
■Topics今まではVBでの使用方法を説明してきましたが、もちろん問題なくVBSからでもWMIは普通に使えます。(管理者が使うことを考えればVBSで使った方がいいのかも・・・。) ただしいくらVBSがVBとそっくりといってもやはり違う部分が出てきます。 もちろん今までの構文の書き方では実行時にエラーが発生してしまいます。 下記のソースは空き領域が10%切っているドライブを取得するサンプルのVBS版です。 Option Explicit
Dim DiskSet
Dim Disk
Dim Locator
Dim Service
Dim MesStr
Set Locator = WScript.CreateObject("WbemScripting.SWbemLocator")
Set Service = Locator.ConnectServer
Set DiskSet = Service.ExecQuery _
("Select * From Win32_LogicalDisk Where DriveType=3")
For Each Disk In DiskSet
If (Disk.FreeSpace / Disk.Size) < 0.1 Then
MesStr = MesStr + Disk.Name
End If
Next
MsgBox "空き容量が10%以下のドライブは、" + _
vbCrLf + MesStr + "ですよ。"
Set DiskSet = Nothing
Set Disk = Nothing
Set Locator = Nothing
Set Service = Nothing
では実行してみましょう。 空き容量が10%切っているドライブがあれば表示されるはずです。 VBの場合との変更部分は、 Set Locator = CreateObject("WbemScripting.SWbemLocator") です。 VBSではNEWキーワードをつかって新しいオブジェクトのインスタンスを作成することはできません。 WScript.CreateObjectメソッドを使用してCOMオブジェクトを生成する必要があります。 ちなみにVBSでは変数の型という概念がないので宣言する必要はありません。 (完全にないわけではありませんが・・・。) 見て解ったかと思いますがVBSでの使い方はVBでの使用時とほとんど同じです。
WMI を本で勉強したい方へ。
なかなか WMI のことが乗っている書籍は少ないですが…管理系業務に係る方には楽しめるかも? |
|
| ^ | Copyright(C) 1997-2006 とお All rights reserved. | << |