在Electron App

时间:2019-01-05 14:28:22

标签: javascript macos electron sudo permission-denied

我需要在许多地方执行具有管理员权限的代码。我找到sudo.exe并成功提示用户输入权限和密码。我仍然不知道如何准确使用sudo.exe。由于我在删除需要管理员权限的文件时遇到相同的错误,即权限被拒绝。那就是我的代码的样子:

const fs = require('fs')
var sudo = require('sudo-prompt');

var options = {
    name: 'Electron',
};

sudo.exec('echo hello', options,
    function(error, stdout, stderr) {
    if (error) throw error;

    // Code that I want to run with admin rights

    fs.unlinkSync("/private/var/log/fsck_hfs.log", (err) => {
        alert("File succesfully deleted");
    });
}
);

我认为这种方法只能用于运行命令,例如 echo hello 。如果我实际上想执行代码而不是命令怎么办? 这种方法有效吗,或者还有其他可用的方法吗?

Electron中是否有更好的方法来获取特权?

0 个答案:

没有答案