主婦と.NETと犬のぶろぐ

奥様 と プログラム と お犬様 の 楽しい日常

目次

Blog 利用状況

ニュース

書庫

日記カテゴリ

DirectoryEntry(System.DirectoryServices.DirectoryEntry)

DirectoryEntry や DirectorySearcher については、宇宙仮面さん のところに詳細に書いてあります。
なので、困った時の宇宙仮面さんのページに訊けばたいていの事は解ります。
なので、メモとしては宇宙仮面さんのページのリンクがはってあれば十分な気がしますが、
@Programing! - ASP.NET(C#) - さん や、om さん のとこで DirectoryEntry を使って IIS を操作してたのが面白そうだったので
VB で遊んでみました。
ちなみに、om さんがおっしゃっている ' リソースキットのIIS Metabase Explorer ' なるもの達は、以下の URLからダウンロードできます。
http://www.microsoft.com/downloads/details.aspx?familyid=56fc92ee-a71a-4c73-b628-ade629c89499&displaylang=en

ついでに、ふじこを自分のコンピューターのユーザーに追加して、
Power Users グループに所属させ、速効削除する、という意味のないコードも書いてみました。

■参考文献
DirectoryEntry クラス
System.DirectoryServices の使用
アクティブディレクトリ (ADSI)(宇宙仮面さん)
IIS を再起動する(@Programing! - ASP.NET(C#) - さん)
om's System:IIS(om さん)

■実行画像
ユーザーの追加 Fujiko
DirectortyEntry Fujiko

Public Class DirectoryEntryTest
    Private Sub DirectoryEntryTest_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        ' IIS 再起動
        Me.DirectoryEntry1.Path = "IIS://localhost/W3svc/1"
        Me.DirectoryEntry1.Invoke("stop")
        Me.DirectoryEntry1.Invoke("start")
        ' IIS に新しく仮想ディレクトリを追加する
        Me.DirectoryEntry1.Path = "IIS://localhost/w3svc/1/ROOT"
        Using testDir As DirectoryServices.DirectoryEntry = _
            Me.DirectoryEntry1.Children.Add("iis_test", "IIsWebVirtualDir")
            testDir.Properties("Path")(0) = "D:\iis_test"
            testDir.Properties("DefaultDoc")(0) = "index.html"
            testDir.CommitChanges()
        End Using
        ' ローカルコンピュータにユーザーを追加する
        Me.DirectoryEntry1.Path = "WinNT://" + System.Environment.MachineName + ",computer"
        Using fujiko As DirectoryServices.DirectoryEntry = _
            Me.DirectoryEntry1.Children.Add("Fujiko", "user")
            fujiko.Properties("Description").Add("これはテストのふじこです")
            fujiko.Invoke("SetPassword", "eden123")
            fujiko.CommitChanges()
            ' Group 参加
            Dim groupEntry As DirectoryServices.DirectoryEntry = _
            Me.DirectoryEntry1.Children.Find("Power Users")
            groupEntry.Invoke("Add", fujiko.Path)
            groupEntry.CommitChanges()
            ' ユーザーの削除
            groupEntry.Invoke("Remove", fujiko.Path) ' Group から脱退
            Me.DirectoryEntry1.Children.Remove(fujiko) ' Computer から脱退
        End Using
    End Sub
End Class

投稿日時 : 2007年1月11日 14:51

Feedback

# re: DirectortyEntry(System.DirectoryServices.DirectoryEntry) 2007/01/11 16:07 シャノン

なんと。
LDAPしか使えないと思ってたら、こんな面白そうな使い方があったのか…。

# re: DirectortyEntry(System.DirectoryServices.DirectoryEntry) 2007/01/11 18:39 なおこ(・∀・)

>> シャノンさん
LDAP でも遊んでみたかったのですが、おうちの環境が許してくれませんでした...orz

# It's genuinely very complicated in this active life to listen news on TV, thus I simply use web for that reason, and take the newest news. 2019/05/03 20:10 It's genuinely very complicated in this active lif

It's genuinely very complicated in this active life to
listen news on TV, thus I simply use web for that reason, and take the newest
news.

# An intriguing discussion is definitely worth comment. I think that you need to publish more on this issue, it might not be a taboo matter but typically folks don't discuss such issues. To the next! Best wishes!! 2019/05/14 11:49 An intriguing discussion is definitely worth comme

An intriguing discussion is definitely worth comment. I
think that you need to publish more on this issue, it might not be a taboo matter but typically folks don't discuss such issues.
To the next! Best wishes!!

# You ought to be a part of a contest for one of the most useful blogs online. I most certainly will highly recommend this website! 2019/05/15 5:08 You ought to be a part of a contest for one of the

You ought to be a part of a contest for one of the most useful
blogs online. I most certainly will highly
recommend this website!

# I do not know whether it's just me or if everybody else encountering problems with your website. It looks like some of the written text within your content are running off the screen. Can somebody else please comment and let me know if this is happening 2019/07/23 21:30 I do not know whether it's just me or if everybody

I do not know whether it's just me or if
everybody else encountering problems with your website.
It looks like some of the written text within your content
are running off the screen. Can somebody else please comment and let me
know if this is happening to them as well? This might be a problem with my
browser because I've had this happen previously. Appreciate it

# QyOsFWynafCP 2021/07/03 4:02 https://www.blogger.com/profile/060647091882378654

I really liked your article post.Much thanks again. Really Great.

# bimatoprost https://bimatoprostrx.com
bimatoprost ophthalmic solution careprost
2021/12/13 16:02 Hksfnjkh

bimatoprost https://bimatoprostrx.com
bimatoprost ophthalmic solution careprost

# clomid generic name https://clomidt.com
clomid tablet 2022/01/03 19:13 Clomid

clomid generic name https://clomidt.com
clomid tablet

タイトル  
名前  
Url
コメント