C#を使用してActive Directoryでプリンタ/共有を検索しようとしています。Active Directoryでプリンタをプログラムで検索する方法
これは私のサンプルコードですが、同じコンセプトでプリンタを見つけることはできません。 (私はActive Directoryを初めて使用しています)。
DirectoryEntry entry = new DirectoryEntry();
entry.Path = "LDAP://xxx.xxx.xx.xx/CN=Printers;DC=domainName, DC=com";
entry.Username = @"domainName.com\Administrator";
entry.Password = "admin";
DirectorySearcher search = new DirectorySearcher(entry);
search.Filter = "(objectCategory=printQueue)";
SearchResult result = search.FindOne();
if (result != null)
{
ResultPropertyCollection fields = result.Properties;
foreach (String ldapField in fields.PropertyNames)
{
foreach (Object myCollection in fields[ldapField])
Console.WriteLine(String.Format("{0,-20} : {1}",
ldapField, myCollection.ToString()));
}
}
ご協力いただければ幸いです。
こんにちは、ありがとうございました! プリンタ用に返されるプロパティにACL(アクセスコントロールリスト)がありません。Active Directoryからプリンタにアクセスするはずのユーザーを見つけることは可能ですか? (C#パスと検索フィルターを使用) – acolene
@acolene:どのACLを意味していますか?アクティブディレクトリ内またはプリンタ共有用のプリンタオブジェクトの場合 – Hans
プリンタ共有の場合は?もし可能ならば? – acolene