- - PR -
ADSIを用いてネットワーク上のActiveDirectoryからドメインユーザ情報を取得する方法
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-05-11 10:18
はじめまして、ゆらゆらと申します。
さっそくご質問ですが、現在私は VisualBasic6.0 にてローカルPC(XP)からAD(Windows2003Server)に登録されているドメインユーザの情報を取得するツールを作成しようと試みております。 この会議室にもネット上にもADSIを用いてユーザ情報を取得するさまざまなサンプルがあり、それを参考に作業を進めていました。 例えば以下のようなサンプルコードで Dim objContainer As IADsContainer Dim objUser As IADsUser ' コンピュータと接続 Set objContainer = GetObject("WinNT://ローカルPCのコンピュータ名") ' 対象をユーザーオブジェクトに限定 objContainer.Filter = Array("User") ' 取得したユーザー一覧を表示 For Each objUser In objContainer Debug.Print = objUser.Name Next ' オブジェクトの解放 Set objUser = Nothing Set objContainer = Nothing とプログラムを書いて、ローカルPC上で実行した場合はローカルPCの登録ユーザ名を取得することに成功しました。ただ、Set objContainer = GetObject("WinNT://リモートPCのコンピュータ名")と変更し、ローカルPC上で実行してもGetObjectで指定したリモートPCに登録されているユーザ情報を取得できませんでした。 そもそもネットワーク越しにあるPCのユーザ情報はこの方法では取れないのか、単に書き方が間違っているのか、PCの設定がおかしいのは分からずに困っています。 もし、同じような件でご存知のかたがいらっしゃいましたら、ご教授ください。よろしくお願いします。 [ メッセージ編集済み 編集者: ゆらゆら 編集日時 2006-05-11 10:19 ] | ||||
|
投稿日時: 2006-05-11 11:59
こんにちは
ログオンしていないだけだと思います。
| ||||
|
投稿日時: 2006-05-11 12:42
ゆいたん様
ご返答ありがとうございます。まさにただログオンしていないだけでした。 早速、いただいたサンプルコードを使用して実行しましたら、無事にADのユーザリストを取得することができました。 本当にありがとうございました。これでようやくツール作成がスムーズに進みそうです。 [ メッセージ編集済み 編集者: ゆらゆら 編集日時 2006-05-11 13:07 ] |
1