众所周知,取系统的安装时间可取注册表HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion的子项InstallDate,此值是个DWORD类型的UnixStamp。
但是在64位系统上有所不同(仅测试了win7、win8),默认情况下32程序在64位机器*问的是下面这个地址HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion。但此注册表下的InstallDate的值为0。
所以,32位程序在64位系统下,读注册表时flag要加上KEY_WOW64_64KEY才能获取到正确的值。
http://www.cnblogs.com/k1988/p/4259928.html