如何知道node-webkit应用程序是否以管理员/提升权限运行?

时间:2015-04-16 08:25:29

标签: javascript node.js node-webkit

如何确定node-webkit是否在Windows上以管理员权限运行?

3 个答案:

答案 0 :(得分:1)

在Windows上,您可以使用npm包is-admin来检查节点进程是否已提升。

const isAdmin = require('is-admin');

isAdmin().then(elevated => {
    if (elevated) {
        console.log('Elevated');
    } else {
        console.log('Not elevated');
    }
});

还有一个名为is-elevated的跨平台实现,它捆绑了Unix和Windows的高程检查

答案 1 :(得分:1)

请勿将npm软件包用于任何小任务-这是非常糟糕的做法。

    var isElevated;

    try {
        child_process.execFileSync( "net", ["session"], { "stdio": "ignore" } );

        isElevated = true;
    }
    catch ( e ) {
        isElevated = false;
    }

答案 2 :(得分:0)

使用node-windows模块,您可以调用以下函数来确定当前用户是否具有管理员权限:

var wincmd = require('node-windows');

wincmd.isAdminUser(function(isAdmin){
  if (isAdmin) {
    console.log('The user has administrative privileges.');
  } else {
    console.log('NOT AN ADMIN');
  }
});