介绍
本次实验主要是让大家掌握如何为自己的应用程序添加在Vista中的运行级别.
目的
- 通过本次实验可以对任何程序进行运行级别的定制.
步骤1 – 确保Vista UAC为开启状态
- 首先点击Vista开始菜单, 选择开始菜单中顶部的当前用户图标并单击:
- 在弹出窗口中选择Turn User Account Control on or off:
- 在对话框中确保Use User Account Control (UAC) to help protect your computer复选框为选中状态:
如果该项为非选中状态则单击选择该项然后点击OK按钮并重新启动计算机
步骤2 – 创建Windows Form应用程序
- 打开VS 2008, 选择File -> New -> Project…:
- 在弹出的项目创建向导种选择Visual C# -> Windows -> Windows Forms Application:
- 输入项目名称为 VistaLogoDemo并点击OK按钮创建项目:
- 这里我们的程序就建立到这里, 我们主要是体验Vista运行级别的定义, 这里点击调试按钮进行调试:
步骤3 – 在VS2008中为程序添加嵌入式自定义级别使程序已管理员权限运行
- 建立文本文件, 将其名称命名为”可执行文件名.exe.manifest”, 这里我们写为”VistaLogoDemo.exe.manifest”, 将下面内容粘贴到文件中:
Code
这里运行级别有3种,我们这里使用 requireAdministrator 表示以管理员权限运行,如果写为 aslnvoker,那么就是以普通权限运行。
- 将该文件存放到项目的”bin\Debug”目录下:
- 回到程序的解决方案中, 选择VS解决方案浏览器上方的Show All Files按钮并点击:
- 打开Bin目录下的Debug目录中的VistaLogoDemo.exe文件:
- 在打开文件后会出现该exe文件的树形列表:
- 在该列表上右击选择Add Resource:
- 在弹出的对话框中选择Import:
- 在弹出的文件选择对话框中将筛选框选择到所有文件:
- 然后选择我们刚才建立的VistaLogoDemo.exe.manifest文件并点击Open按钮:
- 这是在弹出的对话框中的Resource Type中输入RT_MANIFEST, 如下, 并点击OK按钮:
- 完成后回到VistaLogoDemo.exe文件的树形列表, 找到刚刚添加的资源RT_MANIFEST:
- 在值为101的节点右击选择Properties, 将它的ID属性修改为1:
- 将值为1 [Neutral]的节点删除:
- 保存exe文件:
- 到项目的Bin\Debug目录下执行该应用程序即可看到程序默认会要求以管理员权限运行: