我已经构建了node.js应用程序来在系统或用户级别设置注册表。我需要检查用户是否具有管理员权限,据此,我将在系统级别或用户级别设置注册表值。
我如何在node.js或javascript代码中进行检查。
这是我使用regedit设置注册表的方式
对于非管理员,我设置了HKCU \环境
regedit.putValue({
'HKLM\\System\\CurrentControlSet\\Control\\Session Manager\\Environment': {
'XYZ': {
value: regValue,
type: 'REG_SZ'
}
}
},function(err) {}
答案 0 :(得分:0)
我通过执行net session
命令解决了该问题,因为该命令仅在具有管理员权限的情况下才会执行。请注意,这仅适用于Windows!
var platform = require("os").platform();
if (platform == "win32" || platform == "win64") {
require('child_process').exec('net session', function(err, stdout, stderr) {
if (err || !(stdout.indexOf("There are no entries in the list.") > -1)) {
console.log("You are not running this application as administrator");
} else {
console.log("This is being ran with administrator privileges!");
}
});
} else {
console.log("Unknown");
}
使用管理员:This is being ran with administrator privileges!
没有管理员:You are not running this application as administrator