Just to give you some idea how I do this, I search for the objects that I'm looking for using their usnChanged and sort the result by it as well. Then, I go through them in order and persist the highest usnChanged that I processed in my processing to a file or something.
Then, when I start back up the next time, I read that persisted value and use that to prime my search. That way, I start where I left off and don't miss anything. I do a sanity check to ensure that highestCommittedUSN on RootDSE is > my persisted value as well. I call this a sanity check because that should always be true. However, I once had the DC I was using repromoted from media on me and all the USNs started at a very small number that was much lower than the number I had been using. As a result, I wasn't seeing changes! The only thing to do if this happens is start back at 0. Note also that you can't poll for deletions with SDS until .NET 2.0, so if you are trying to do a full synch application, you'll need to do something else to deal with that part. HTH, Joe K. -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Mikael H�kansson Sent: Wednesday, March 16, 2005 2:34 AM To: [email protected] Subject: Re: [ActiveDir] Retrieving changes using the uSNChanged property Ok, I have got it working now. The 'value' property was updated on every connection and set to highestCommittedUSN (i.e. my misstake). Thanks for the replies, and sorry for the spam! :) //Mikael On Tue, 15 Mar 2005 11:32:32 -0600, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote: > This can definitely be done with SDS as I do it pretty often and have a few > production applications that use this every day to great effect. > > The first thing I'd do is try your query in ldp.exe or ADfind and make sure > it is behaving the way you want it to. > > Joe K. > > -----Original Message----- > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Mikael > H�kansson > Sent: Tuesday, March 15, 2005 6:22 AM > To: [email protected] > Subject: [ActiveDir] Retrieving changes using the uSNChanged property > > Hi > > I�m trying to retrieve only changes from active directory by using the > uSNChanged property in my query. > > However, even if a manually change an object and verify that the > uSNChanged is changed, I still don�t get any results back from my > query. > > Sample query: > > "(&(objectClass=user)(objectCategory=person)(uSNChanged>=value))" > where value is taken from the highestCommittedUSN property of the > RootDSE object the first time the application runs. > > Does anyonw know why I�m not getting any results back? > Maybe this cannot be done using the .NET directoryservices?? > > //Mikael > List info : http://www.activedir.org/List.aspx > List FAQ : http://www.activedir.org/ListFAQ.aspx > List archive: http://www.mail-archive.com/activedir%40mail.activedir.org/ > > This message is for the designated recipient only and may contain privileged, > proprietary, or otherwise private information. If you have received it in > error, please notify the sender immediately and delete the original. Any > other use of the email by you is prohibited. > List info : http://www.activedir.org/List.aspx > List FAQ : http://www.activedir.org/ListFAQ.aspx > List archive: http://www.mail-archive.com/activedir%40mail.activedir.org/ > List info : http://www.activedir.org/List.aspx List FAQ : http://www.activedir.org/ListFAQ.aspx List archive: http://www.mail-archive.com/activedir%40mail.activedir.org/ This message is for the designated recipient only and may contain privileged, proprietary, or otherwise private information. If you have received it in error, please notify the sender immediately and delete the original. Any other use of the email by you is prohibited. List info : http://www.activedir.org/List.aspx List FAQ : http://www.activedir.org/ListFAQ.aspx List archive: http://www.mail-archive.com/activedir%40mail.activedir.org/
