我想通过使用C#的ActiveDirectory中的uSNChanged
值获取最后修改或创建的属性...我也试图找到最大值uSNChanged
,你能帮我找出解决方案?由于如何使用C#读取“uSNChanged”属性
4
A
回答
1
我得到了解决家伙,我们可以通过这个属性得到一个网域控制器的最大usnchanged值HighestCommittedUsn
2
有两种方法可以通过.NET检索uSNChanged
属性:
包括对COM库的引用:“Active DS Type Library”,那么您需要使用
IADsLargeInterger
来检索该值并最终将其转换为long
。 For example:IADsLargeInteger li_ad = (IADsLargeInteger)oUser.Properties["USNChanged"].Value; long l_uChanged = GetLongFromLargeInteger(li_ad); static long GetLongFromLargeInteger( IADsLargeInteger Li) { long retval = Li.HighPart; retval <<=32; retval |=(uint)Li.LowPart; return retval; }
仅使用C#转换的值。由于Simon Gilbee,我们有这个选项:
long usnChanged = CovertADSLargeIntegerToInt64(oUser.Properties["USNChanged"].Value); public static Int64 ConvertADSLargeIntegerToInt64(object adsLargeInteger) { var highPart = (Int32)adsLargeInteger.GetType().InvokeMember("HighPart", System.Reflection.BindingFlags.GetProperty, null, adsLargeInteger, null); var lowPart = (Int32)adsLargeInteger.GetType().InvokeMember("LowPart", System.Reflection.BindingFlags.GetProperty, null, adsLargeInteger, null); return highPart * ((Int64)UInt32.MaxValue + 1) + lowPart; }
我强烈建议你选择2去避免问题与传统ActiveDs库,将不再需要答案关闭this list。
相关问题
- 1. 用C读取XML属性#
- 2. 如何使用C读取Linux中文件的vfat属性C
- 3. Xliff - 如何使用Delphi读取属性?
- 4. 如何使用JQuery读取href属性
- 5. 如何使用变量读取属性
- 6. 如何读取C#中的XML属性?
- 7. 如何使用C#读取.DLL文件的属性?
- 8. 使用SimpleXML读取属性
- 9. C#读取属性值
- 10. 读取XML属性C#
- 11. 如何读取sysfs属性
- 12. 属性文件读取C(没有C#或C++)使用MinGW
- 13. 如何使用C#检查邮件读取或未读属性(Lotus Notes)
- 14. 如何使用c#属性?
- 15. 如何用c#读取一个类的属性?
- 16. 读取用C属性名称++使用Xerces的
- 17. 如何使用Java阅读Android属性
- 18. 使用ReflectionClass读取类属性
- 19. 读取属性文件使用JavaScript
- 20. 使用xquery读取属性和值
- 21. 使用jQuery读取“data-id”属性
- 22. 使用PHP读取XML属性
- 23. 使用XDocument和LINQ读取属性
- 24. 使用XStream读取元素属性值
- 25. 使用VBA读取图表属性
- 26. 使用属性读取方法参数
- 27. 使用XmlDocument读取XML属性
- 28. 使用简单XML读取XML属性
- 29. 使用linq读取属性值
- 30. 使用xerces读取xml属性的值