首页 > 解决方案 > 如何使用命令在 Windows 系统中获取安全级别的事件日志,而不在管理模式下运行 PowerShell

问题描述

我正在使用电子构建一个桌面应用程序,我需要在其中获取安全类型事件中存在的事件日志。我尝试通过命令访问数据,如下所示:

exec('PowerShell.exe Get-EventLog -LogName Security -Newest 5', (error, stdout, stderr) => {
      if (error) {
        console.error(`exec error: ${error}`);
        return;
      }
      // console.log(`stdout: ${stdout}`);
}); 

但是我收到错误消息,指出“不允许请求的注册表访问”。当我在管理模式下手动运行 Powershell 时,这将不是问题。我可以使用相同的命令访问应用程序和系统类型的事件日志,但分别将安全性替换为应用程序和系统。是否可以在不以管理员模式运行的情况下获取安全事件日志。如果是,请指导我,因为这是我在电子中构建桌面应用程序的第一次体验。

标签: node.jspowershell

解决方案


推荐阅读