【发布时间】:2015-08-21 20:38:32
【问题描述】:
我的安装程序以管理员身份运行,但完成后我希望 exe 以当前用户身份运行。
我正在使用 nsis 并且已经尝试过 UAC
!insertmacro UAC_AsUser_ExecShell "" "some.exe" "" "" ""
但它仍然以管理员身份运行。
尝试使用任务调度器
string path = System.Reflection.Assembly.GetExecutingAssembly().Location;
td.Actions.Add(new ExecAction("" + path + "", "", null));
td.Settings.DisallowStartIfOnBatteries = false;
td.Settings.AllowHardTerminate = false;
td.Settings.StopIfGoingOnBatteries = false;
td.Settings.ExecutionTimeLimit = System.TimeSpan.Zero;
td.Settings.IdleSettings.StopOnIdleEnd = false;
// Register the task in the root folder
ts.RootFolder.RegisterTaskDefinition("task", td);
但该任务也转到管理员,我无法将其发送给当前用户。
有什么想法吗?
【问题讨论】:
-
在这个低流量标签上期望在 45 分钟内得到答复有点苛刻恕我直言。
标签: c# scheduled-tasks nsis uac