繁体   English   中英

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

[英]How do I make my program run with different privileges at Windows 7 startup?

我正在尝试添加在Windows 7启动中运行的程序,但是它不起作用。 我的程序具有嵌入式UAC清单。

我当前的方法是在HKCU .. \\ Run中添加一个字符串值。

我从http://social.technet.microsoft.com/Forums/en/w7itprosecurity/thread/81c3c1f2-0169-493a-8f87-d300ea708ecf找到了适用于Vista的手动解决方案

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

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

  1. 打开Regedit。
  2. 在注册表中找到启动项的条目。 它将存储在以下分支之一中。
    • HKEY_LOCAL_MACHINE \\ SOFTWARE \\微软\\的Windows \\ CurrentVersion \\ Run中
    • HKEY_USERS.DEFAULT \\软件\\微软\\的Windows \\ CurrentVersion \\ Run中
    • HKEY_CURRENT_USER \\软件\\微软\\的Windows \\ CurrentVersion \\ Run中
  3. 双击正确的键,将路径更改为创建的已保存计划任务。

是否有任何免费代码可在计划任务中添加带有特权选项的项目? 我在torry.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计划代理 ,该代理是Windows Task Scheduler的VCL包装器,并支持Windows Vista中提供的新接口。

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

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

“ / RL HIGHEST”是使任务以管理员级别特权运行的方式。

您是在问如何让您的应用在Windows 7启动时启动(启动),还是在问如何在Windows 7启动时更改应用权限?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM