【发布时间】:2018-12-06 10:07:59
【问题描述】:
我制作了一个以管理员权限运行的应用。为了在 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
但它返回ERROR: Access is denied.。这是因为卸载没有管理员权限。我该怎么办,我应该尝试使用 admin priv 执行卸载吗?还是有其他方法可以移除任务?
如果可执行文件不在路径中,我的另一个选择是让任务自行删除它。
我正在使用的电子包.json:
"win": {
"target": [
"nsis"
],
"requestedExecutionLevel": "requireAdministrator"
},
"nsis": {
"include": "installer/windows/uninstall.nsh",
"allowElevation": true,
"deleteAppDataOnUninstall": true
},
【问题讨论】:
-
手动提升卸载程序是否有效?
-
@Andreas 确实如此,我需要搜索 windows 命令来提升程序而不执行它,但这不是解决它的好方法,但作为最后一件事我会这样做。
-
@jalanga 你解决了这个问题吗?如果是,请写出方法。
-
@Rustam 我现在就回答。
标签: windows electron nsis taskscheduler electron-builder