@IT会議室は、ITエンジニアに特化した質問・回答コミュニティ「QA@IT」に生まれ変わりました。ぜひご利用ください。
- PR -

同じLANのPC一覧、如何取得しますか?

投稿者投稿内容
crow
ベテラン
会議室デビュー日: 2006/09/13
投稿数: 67
投稿日時: 2007-01-09 12:03
VS2005 VB.net

マイ ネットワークみたいにPC一覧を表示したいが、如何すればいいですか?

じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2007-01-09 12:52
引用:

crowさんの書き込み (2007-01-09 12:03) より:

VS2005 VB.net

マイ ネットワークみたいにPC一覧を表示したいが、如何すればいいですか?


ネットワークの構成などが (書かれていないため) 良くわかりませんが、
ADSI (Active Directory Services Interfaces) を使えば良いのではないでしょうか。

どうも、何も手をつけていらっしゃらないようなので、
まずは、System.DirectoryServices 名前空間を探ってみると良いでしょう。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
crow
ベテラン
会議室デビュー日: 2006/09/13
投稿数: 67
投稿日時: 2007-01-09 13:07
有難うございます。
難しく感じますが、簡単な例があれば助かりますけど。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2007-01-09 13:10
引用:

crowさんの書き込み (2007-01-09 13:07) より:

有難うございます。
難しく感じますが、簡単な例があれば助かりますけど。


まずは調べましょう。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
crow
ベテラン
会議室デビュー日: 2006/09/13
投稿数: 67
投稿日時: 2007-01-09 15:05
Dim src As DirectorySearcher = New DirectorySearcher("…")

src.VirtualListView=New DirectoryVirtualListView()
For Each res As SearchResult In src.FindAll
・・・
Next
以上のように使えば、PCの一覧が取れると思いますが、今使っているネットワークはDomainが使っていないので、Workgroupでも使える方法が教えてくれませんか

宜しくお願いします。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2007-01-09 16:33
引用:

crowさんの書き込み (2007-01-09 15:05) より:

Dim src As DirectorySearcher = New DirectorySearcher("…")

src.VirtualListView=New DirectoryVirtualListView()
For Each res As SearchResult In src.FindAll
  ・・・
Next
以上のように使えば、PCの一覧が取れると思いますが、


今回、DirectorySearcher を使う必要はありません。
DirectorySearcher は LDAP プロバイダが必要ですし。

何か妙だと思っていましたら、この使用例を VB に置き換えただけでしたか。(;~_~)

引用:

今使っているネットワークはDomainが使っていないので、Workgroupでも使える方法が教えてくれませんか


その Workgroup 名から、System.DirectoryServices.DirectoryEntry クラスのインスタンスを生成します。
あとは、そのインスタンスから、子ノードを見れば良いでしょう。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
crow
ベテラン
会議室デビュー日: 2006/09/13
投稿数: 67
投稿日時: 2007-01-09 17:59
引用:

その Workgroup 名から、System.DirectoryServices.DirectoryEntry クラスのインスタンスを生成します。
あとは、そのインスタンスから、子ノードを見れば良いでしょう。


以下のように試しましたが、だめでした。
 Dim src As New System.DirectoryServices.DirectoryEntry("WORKGROUP")
イミディエイトウィンドウに
?src --したら、エラーを特定できませんでした
{System.DirectoryServices.DirectoryEntry}
AuthenticationType: Secure {1}
Children: {System.DirectoryServices.DirectoryEntries}
Container: Nothing
Guid: {"エラーを特定できません
"}
Name: {"エラーを特定できません
"}
NativeGuid: {"エラーを特定できません
"}
NativeObject: {"エラーを特定できません
"}
ObjectSecurity: {"エラーを特定できません
"}
Options: {"エラーを特定できません
"}
Parent: {"エラーを特定できません
"}
Path: "Workgroup"
Properties: {System.DirectoryServices.PropertyCollection}
SchemaClassName: {"エラーを特定できません
"}
SchemaEntry: {"エラーを特定できません
"}
Site: Nothing
UsePropertyCache: True
Username: Nothing
crow
ベテラン
会議室デビュー日: 2006/09/13
投稿数: 67
投稿日時: 2007-01-09 18:33
有難うございます。解決しました。

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