如何从Windows注册表解码REG_二进制日期?
我正在尝试解码Windows注册表中编码为REG_二进制的日期。具体到今天:如何从Windows注册表解码REG_二进制日期?,windows,date,format,registry,decode,Windows,Date,Format,Registry,Decode,我正在尝试解码Windows注册表中编码为REG_二进制的日期。具体到今天: SignaturesLastUpdated REG_BINARY 720CB9EBE8CBCE01 这将在2013年实现 知道如何手动解码吗?(即不使用任何内置的C或C++库)< P>这是一个定义为: 包含表示100纳秒数的64位值 自1601年1月1日(UTC)起的间隔时间 结构如下所示: typedef struct _FILETIME { DWORD dwLowDateTime; DWORD
SignaturesLastUpdated REG_BINARY 720CB9EBE8CBCE01
这将在2013年实现
知道如何手动解码吗?(即不使用任何内置的C或C++库)< P>这是一个定义为:
包含表示100纳秒数的64位值
自1601年1月1日(UTC)起的间隔时间
结构如下所示:
typedef struct _FILETIME {
DWORD dwLowDateTime;
DWORD dwHighDateTime;
} FILETIME, *PFILETIME, *LPFILETIME;
成员
dwLowDateTime
文件时间的低阶部分
dwHighDateTime
文件时间的高阶部分
下面是如何将其转换为Unix时间(in-Go):
键入Filetime结构{
LowDateTime uint32
HighDateTime uint32
}
//纳秒以纳秒为单位返回Filetime ft
//自大纪元(UTC,1970年1月1日,00:00:00)起。
func(ft*Filetime)纳秒()int64{
//从1601年1月1日起每隔100纳秒
nsec:=int64(ft.HighDateTime)它是一个定义为:
包含表示100纳秒数的64位值
自1601年1月1日(UTC)起的间隔时间
结构如下所示:
typedef struct _FILETIME {
DWORD dwLowDateTime;
DWORD dwHighDateTime;
} FILETIME, *PFILETIME, *LPFILETIME;
成员
dwLowDateTime
文件时间的低阶部分
dwHighDateTime
文件时间的高阶部分
下面是如何将其转换为Unix时间(in-Go):
键入Filetime结构{
LowDateTime uint32
HighDateTime uint32
}
//纳秒以纳秒为单位返回Filetime ft
//自大纪元(UTC,1970年1月1日,00:00:00)起。
func(ft*Filetime)纳秒()int64{
//从1601年1月1日起每隔100纳秒
nsec:=int64(ft.HighDateTime)该值太大,无法用普通Windows格式表示时间,100纳秒是常用的最小时间单位。这很可能是故意加密的。您肯定知道编写代码的程序员(知道的程序员)何时没有响应您的支持请求。没有在中存储日期的标准注册表。您必须检查该注册表项的文档。它应该解释格式。该值太大,无法表示普通Windows格式中的时间,100纳秒是常用的最小时间单位。这很可能是故意加密的。您肯定知道编写代码(知道的代码)没有响应您的支持请求。注册表中没有存储日期的标准。您必须检查该注册表项的文档。它应该解释格式。谢谢,我不再需要它,但可能对其他人有用。谢谢,我不再需要它,但可能对其他人有用.