Hi, Ich habe folgendes Problem...
In c# hab ich eine Guid und will diese in ein Nicht Mehrwertiges OctetString Min(16) Max(16) Feld in Active Direcory schreiben. So sind z.B. auch die ObjectGUIDs hinterlegt..
auslesen is klar...
byte[] test = (byte[])(DirectoryEntry.Properties["testOctetString"].Value);
aber das reinschreiben funktioniert irgendwie nicht...
//Theoretisch sollte es ja sein:
DirectoryEntry.Properties["testOctetString"].Value = byteArray;
//oder
DirectoryEntry.Properties["testOctetString"].Value = Guid;
//oder
//Neuer Wert einfügen
DirectoryEntry.Properties["testOctetString"].Add(byteArray);
//Vorheriger Wert rauslöschen
DirectoryEntry.Properties["testOctetString"].Remove(0);
//Am Ende immer ein CommitChanges zum speichern in AD
DirectoryEntry.CommitChanges();
Aber alles will irgendwie nicht... Vielleicht hatte jemand ja schonmal das Problem und kann mir behilflich sein.
gruß Horego
AHH ICH HABS 🙂)
Endlich...
Also das ganze is im prinzip ganz einfach! In der MSDN hilfe ist es aber falsch beschrieben 😜
//Alles löschen
DirectoryEntry.Properties["testOctetString"].Clear();
[B]//Zuvor nochmal Speichern!! => Das war der Fehler[/B]
[B]DirectoryEntry.CommitChanges();[/B]
//Wert setzen
DirectoryEntry.Properties["testOctetString"].Value = Guid;
//Jetzt entgültig speichern
DirectoryEntry.CommitChanges();