如何将Integer8类型的值转换为DateTime类型的值?特别是,我试图以人类可读的形式获取Active Directory用户属性的accountExpires。 SearchResult.GetDirectoryEntry.Properties("accountExpires")
返回值“9223372036854775807”。如何将Integer8的值转换为DateTime?
3
A
回答
2
使用DateTime.FromFileTime。
http://forums.asp.net/t/999913.aspx/1?Reading+AccountExpires+Property
7
从在AD http://www.dotnet247.com/247reference/msgs/19/96138.aspx
的 “Integer8” 是保持两个32位的属性的对象,称为 LowPart和HighPArt。这样的属性作为通用RCW (__ComObject)返回,您需要做的是打开底层对象或将其转换为LargInteger COM类型。之后,您必须将 这两个属性合并为一个长整型(64位),如果该值表示日期 ,则必须将格式从FileTime转换为DateTime。
以下显示如何检索“lastLogon”日期属性。 !设置一个 对activeds.tlb的引用,或使用 tlbimp.exe创建一个互操作库!
// Use a cast ...
li = pcoll["lastLogon"].Value as LargeInteger;
// Or use CreateWrapperOfType
// li = (LargeIntegerClass)Marshal.CreateWrapperOfType(pcoll["lastLogon"].Value,
typeof(LargeIntegerClass));
// Convert to a long
long date = (((long)(li.HighPart) << 32) + (long) li.LowPart);
// convert date from FileTime format to DateTime
string dt = DateTime.FromFileTime(date).ToString();
相关问题
- 1. 将ActiveDirectory查询的DateTime值转换为Integer8
- 2. 如何将SqlDateTime值转换为.Net :: DateTime
- 3. 如何转换DateTime?为DateTime
- 4. 将用户输入转换为DateTime值
- 5. 如何将“mm/yyyy”varchar转换为datetime?
- 6. 如何将varchar转换为datetime?
- 7. 如何将UTC转换为DateTime?
- 8. 如何将sqldatetime.minvalue转换为datetime?
- 9. 如何将.NET tick转换为python datetime?
- 10. 如何将java.sql.Timestamp转换为DateTime?
- 11. 如何将varchar转换为datetime
- 12. 如何将lastlogon从AD转换为datetime?
- 13. 如何将pd.Series转换为datetime?
- 14. 如何将datetime转换为短日期?
- 15. 如何将DateTime转换为JulianDate?
- 16. 如何将Oracle DateTime转换为日期
- 17. 如何将str转换为datetime?
- 18. 如何将毫秒数转换为DateTime?
- 19. 如何将MYSQL DateTime转换为NSDate - Swift
- 20. 如何将Varchar转换为Datetime?
- 21. 从Bigint转换为datetime值
- 22. 如何将Nullable DateTime变量的空值转换为DbNull.Value
- 23. 如何将DateTime的SQL Server XML类型值(xsi:nil)转换为空
- 24. 如何将DATETIME转换为T-SQL中的FILETIME值?
- 25. 如何将官方DateTime转换为天文精确的DateTime?
- 26. 如何将DateTime字符串转换为SQL Server中的DateTime
- 27. 将varchar转换为datetime
- 28. 将datetime js转换为c#
- 29. 将dateTime转换为int
- 30. SQL - 将varchar转换为datetime
谢谢你,这是真的很有帮助! –