2
我试图在Active Directory中使用accountExpires属性获取所有已过期的帐户。Coldfusion计算帐户验证号码
由于属性类型是Int8(64位整数),并且coldfusion不支持这样的长整数,所以我很难让它工作。
是否有一个功能或某种我可以用来达到上述目的?
谢谢!
我试图在Active Directory中使用accountExpires属性获取所有已过期的帐户。Coldfusion计算帐户验证号码
由于属性类型是Int8(64位整数),并且coldfusion不支持这样的长整数,所以我很难让它工作。
是否有一个功能或某种我可以用来达到上述目的?
谢谢!
Java中的64位整数是java.lang.Long。在ColdFusion中,多数含义为converted to Integers。
accountExpires
是表示自1月1日的100毫微秒间隔数windows file time structure,1601 This thread显示了我们如何可以得到Windows文件时间日期:
long diff1601to1970 = 315532800 * 1000000000; // <-- diff in nanoseconds(1/1/1601 to 1/1/1970) long currentFrom1970 = System.currentTimeMillis() * 1000000; long currentFrom1601 = diff1601to1970 + currentFrom1970;
这让我们在ColdFusion中执行以下操作:
accountExpiresFileTime = 129407978957060010;
date = createObject("java", "java.util.Date").init(
(accountExpiresFileTime-116444736000000000)/10000
);
希望有帮助。
你好,感谢您的回复。我试过了```cfset dateJava = objJava.init((129407978957060010-116444736000000000)/ 10000)>`我得到错误:INIT无法找到适合的构造函数来调用,请使用javacast指定参数类型。但是当我尝试:``没问题。任何想法? ( –
James
2011-12-16 05:18:37