我试图找出 Notepad.exe 如何能够获取保存在 Windows 注册表中的当前系统日期格式,而无需访问注册表。
我HKCU\Control Panel\International
使用进程监视器工具在注册表中的项上添加了一个过滤器,以检测 Notepad.exe 是否正在访问注册表
我尝试了下面列出的步骤
打开记事本
启动进程监控
打开注册表编辑器并更改注册表中sShortDate 子项的值(HKCU\Control Panel\International)
正如预期的那样,进程监视器显示注册表编辑器已访问HKCU\Control Panel\International 注册表项- 激活记事本窗口并按下F5以插入当前
日期和时间 - 在记事本中插入了新日期格式的日期
我原本希望记事本能够访问HKCU\Control Panel\International
最新日期格式的密钥。但它似乎无法访问该密钥
我想知道记事本如何在不访问注册表的情况下获取日期格式
我想在另一个访问注册表需要花费大量时间的项目中使用此信息
答案1
对于您的另一个项目,您应该使用所使用的任何语言的内置方法来获取日期和时间,而不是从注册表中读取。
例子 :您可以Get-Date
在 PowerShell 中使用 cmdlet。这比从注册表读取日期和时间要好得多。
它允许您以对象格式获取系统日期和时间。
比较两个日期或获取日期、月份等具体信息等简单操作变得非常容易。
更新与 OP 聊天的帖子
VBScript 还提供了多种方法来访问系统日期和时间。您可以使用内置的日期和时间函数,也可以调用 WMI。
一些资源: