フィルタ

  必要なオブジェクトのみに絞る



Computer オブジェクトの中には、User、Group、Service という3種類のオブシェクトが存在します。例えば、Service というオブジェクトを表示したく無い場合は以下のようにします

  
<SCRIPT language=VBScript>

function EnumTest()

	Set obj = GetObject("WinNT://NT")

	List = List & "Name : " & obj.Name & "<BR>"
	List = List & "Class : " & obj.Class & "<BR>"

	' フィルタの設定
	obj.Filter = Array("User", "Group")

	List = List & "<TABLE border=0 cellspacing=1 cellpadding=5 bgcolor=black>"
	List = List & "<TH bgcolor=silver>名称</TH>" & vbCrLf
	List = List & "<TH bgcolor=silver>クラス</TH>" & vbCrLf
	For Each objTarget In obj
		List = List & "<TR>"
		List = List & "<TD bgcolor=white>" & objTarget.Name & "</TD>"
		List = List & "<TD bgcolor=white>" & objTarget.Class & "</TD>"
		List = List & "</TR>" & vbCrLf
	Next
	List = List & "</TABLE>"

	document.all("Result").innerHTML = List

end function

</SCRIPT>
<HTML>
<HEAD>
<META http-equiv="Content-Type" CONTENT="text/html; CHARSET=Shift_JIS">
</HEAD>
<BODY>
<INPUT type=button value="表示" onClick='Call EnumTest()'>
<INPUT type=button value="再表示" onClick='Call location.reload( true )'>
<BR><BR>
<DIV id=Result></DIV>
</BODY>
</HTML>
  



  IADsContainer インターフェイス



この「フィルタ」は、IADsContainer インターフェイスによるもので、全てのオブジェクトが持つものではありません。もともと、コンテナというオブジェクトの集合であると意味を持つオブシェクトにのみ実装されています。他には、二つのプロパティがあります

1) Count
2) Hints

メソッドは5つ実装されており、以下のようなものとなります

1) GetObject
2) Create
3) Delete
4) CopyHere
5) MoveHere

Microsoft の詳細は こちら です

要するにコレクションのようなものです。これを使用してユーザを削除するコードは以下のようになります

  
Set obj = GetObject("WinNT://NT")

Call obj.Delete( "User", "test" )
  

User はクラス名、test は削除するユーザ名です。Windows XP Home Edition 上で NT 4.0 のユーザを削除しています










  infoboard   管理者用   
このエントリーをはてなブックマークに追加





フリーフォントWEBサービス
SQLの窓WEBサービス

SQLの窓フリーソフト

素材

一般WEBツールリンク

SQLの窓

フリーソフト

JSライブラリ