Hallo!
Ich habe folgendes Problem:
Ich schreibe ein Windows Service welches aus dem AD alle User mit einer Mailbox ausliest und danach von jedem gefundenen User die Mailboxgröße bestimmt. Hab das Service auf einem Server mit Win2000 und Exchange2000 getestet -> funktioniert einwandfrei.
Danach habe ich es auf einem Windows Server 2003 getestet und ich bekomme folgende Fehlermeldung:
System.Runtime.InteropServices.COMException (0x8007203A): Der Server ist nicht funktionstüchtig
at System.DirectoryServices.DirectoryEntry.Bind(Boolean throwIfFail)
at System.DirectoryServices.DirectoryEntry.Bind()
at System.DirectoryServices.DirectoryEntry.get_AdsObject()
at System.DirectoryServices.DirectorySearcher.FindAll(Boolean findMoreThanOne)
at System.DirectoryServices.DirectorySearcher.FindAll()
at MailboxSizeLib.MailboxSize.searchUser(String strDomain)
Hier ist der Code den ich verwende:
private void searchUser(string strDomain)
{
try
{
DirectoryEntry objEntry = new DirectoryEntry("LDAP://" + strDomain);
DirectorySearcher objSearcher = new DirectorySearcher(objEntry);
objSearcher.Filter = "(&(objectClass=user)(MsExchMailboxGuid=*))";
SearchResultCollection objSearchResult = objSearcher.FindAll();
.....
Weiß vielleicht jemand woran das liegen könnte?
Danke für eure Hilfe
Mfg
Gerald
hast du mal die Exception.Message im Code abgefangen?
was steht darin?
mmh, sind die Server in ihrer Funktion äquivalent?
(DC, GC evtl. PDC?)
Du bindest ja das DirectoryEntry auf keinen speziellen Member Server im AD?
vielleicht solltest du auf einen speziellen DC oder GC binden?
(das kann ja auch dynamisch passieren)
There are only ten types of people in the world. Those who understandy binary and those who do not.
Die Exception.message ist das was ich oben geschrieben habe: Der Server ist nicht funktionstüchtig....
Der Server auf dem es nicht funktioniert ist unser Hauptserver, ich habs mal auf einem Testserver (Windows Server 2003) probiert, dort funktioniert es auch.
Was meinst du damit dass ich den Directory Entry auf einen speziellen Member binden soll? Kannst du mir vielleicht ein Beispiel dazu geben?
Danke
Hi,
ist das wirklich die Meldung, die du mit try und catch abfängst?
Was für ein Server ist das jetzt, wo es nicht funktioniert?
Du kannst zum Beispiel ein LDAP mit Serverbinding machen :
eine Möglichkeit wäre :
string strLDAP = "LDAP://<Servername>/CN=Users,DC=<domain1>,DC=<domain2>,DC=<domain3>"
DirectoryEntry test = new DirectoryEntry(strLDAP);
.... //usw.
Um den Fehler besser einzugrenzen, kannst du zum Beispiel mal ein Binding auf einen Server machen, wo es funktioniert hat.
Viel Erfolg.
Gruß develc
There are only ten types of people in the world. Those who understandy binary and those who do not.