如何让我的程序在Windows 7启动时以不同的权限运行?

我试图添加我的程序在Windows 7启动运行,但它不工作。 我的程序有一个embedded的UAC清单。

我目前的方式是在HKCU .. \ Run中添加一个string值。

我从http://social.technet.microsoft.com/Forums/en/w7itprosecurity/thread/81c3c1f2-0169-493a-8f87-d300ea708ecffind了一个手动的Vista解决scheme

  1. 单击开始,右键单击计算机,然后select“pipe理”。
  2. 点击左侧面板上的“任务计划程序”。
  3. 点击右侧面板上的“创build任务”。
  4. input任务的名称。
  5. 选中“以最高权限运行”。
  6. 点击操作标签。
  7. 点击“新build…”。
  8. 浏览到“程序/脚本”框中的程序。 点击OK。
  9. 在桌面上,右键单击,select新build,然后单击“快捷方式”。
  10. 在框中键入:schtasks.exe / run / tn TaskName其中TaskName是您在基本选项卡上放置的任务的名称,然后单击下一步。
  11. input快捷方式的名称,然后单击完成。

此外,您需要运行保存的计划任务快捷方式来运行程序,而不是运行应用程序快捷方式来忽略IAC提示。 启动时,系统将通过原始快捷方式运行程序。 因此,您需要更改位置以运行保存的任务。 请:

  1. 打开Regedit。
  2. 在registry中find启动项的条目。 它将存储在以下分支之一中。
    • HKEY_LOCAL_MACHINE \ SOFTWARE \微软\的Windows \ CurrentVersion \ Run中
    • HKEY_USERS.DEFAULT \软件\微软\的Windows \ CurrentVersion \ Run中
    • HKEY_CURRENT_USER \软件\微软\的Windows \ CurrentVersion \ Run中
  3. 双击正确的键,将path更改为您创build的保存的计划任务。

是否有任何免费代码添加项目与特权选项在计划任务? 我还没有findtorry.net中的免费的。

非常感谢。

有一个名为TaskScheduler的COM组件。 有些文档位于http://msdn.microsoft.com/zh-CN/library/aa384006(v=VS.85).aspx 。 Windows 7培训工具包中包含C#中的示例。

JCL提供了Delphi接口单元来控制Microsoft任务计划服务。 它的名字是JclTask​​.pas。 他们还提供了在“jcl \ examples \ windows \ tasks”文件夹中添加/删除/显示Windows任务的演示应用程序。

此外,如果商业组件可以与您合作,SiComponents提供了VCL Scheduling Agent ,它是Windows Task Scheduler的VCL包装器,并支持Windows Vista中提供的新界面。

为什么不把你的程序添加到任务计划? 有关选项,请参阅MSDN上 schtasks.exe的命令行选项。 你的命令行可能看起来像这样:

schtasks.exe /创建/ RU {用户名} / RP {密码} / SC ONLOGON / TN {任务名称} / TR {要运行的文件} / RL最高。

“/ RL HIGHEST”是让任务以管理员权限运行的功能。

你问如何让你的应用程序在Windows 7启动时启动(启动),或者你问如何在Windows 7启动时更改你的应用程序的权限?