我制作了一个以管理员权限运行的应用程序。为了在 Windows 启动时运行该应用程序,我创建了一个 SchTasks,但在卸载时我想将其删除。我能得到的最接近的是:
;script used to remove the auto launch scheduled task
!macro customUnInstall
ExpandEnvStrings $0 %COMSPEC%
ExecWait `"$0" /c "SchTasks /Delete /TN task_name /F & pause"`
!macroend
但它返回错误:访问被拒绝。
。这是因为卸载没有管理员权限。我该怎么办,我应该尝试使卸载以管理员权限执行吗?或者还有其他方法可以删除任务?
我想到的另一个选择是,如果可执行文件不在路径中,则使任务自行删除。
我正在使用的 Electron package.json:
"win": {
"target": [
"nsis"
],
"requestedExecutionLevel": "requireAdministrator"
},
"nsis": {
"include": "installer/windows/uninstall.nsh",
"allowElevation": true,
"deleteAppDataOnUninstall": true
},
最佳答案
我对 Electron-builder 一无所知,但我确实知道,如果安装程序脚本具有 RequestExecutionLevel Admin
,那么卸载程序也会请求在 Vista+ 上提升权限。
关于windows - Electron、 Electron 构建器、nsis、卸载时删除 SchTasks,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51064014/