Win7编程:在按钮中加入管理员权限运行盾牌图标教程
发布时间:2023-04-03 09:41:30
这篇教程是向大家介绍win7按钮中加入管理员权限运行盾牌图标过程,本教程分两部分,第一,如何实现软件本身运行时申请管理员权限,第二,如何在软件窗体内的按钮上面加入盾牌图标(意味着本功能需要管理员权限执行)这篇教程是向大家介绍win7按钮中加入管理员权限运行盾牌图标过程,本教程分两部分,第一,如何实现软件本身运行时申请管理员权限,第二,如何在软件窗体内的按钮上面加入盾牌图标(意味着本功能需要管理员权限执行)。
步骤/方法
1、一、软件自身运行时的管理员权限申请机制
2、在开启UAC的时候,在Win7(Windows Server 2008 R2)或者Vista(Windows Server 2008)中执行程序默认是以一种权限较低的方式执行的,但是在这种方式下,我们有些操作会失败(比如修改注册表,监听端口,往系统目录写入文件等),要实现这些操作,就需要我们以管理员权限执行程序了。
3、当然,只有在程序上右键,选择“以管理员执行”就可以,不过如何让程序自己自动以管理员权限来运行呢,这就需要Manifest了。
4、首先我们来新建个项目(懒得改名字了,就叫WindowsFormsApplication1吧)
5、按F5执行下(恩,貌似没有啥问题[空文档,有问题才怪... ])
6、然后我们添加Manifest(中文版叫“应用程序清单文件”)
7、下面我们看下Manifest的内容——
8、内容里的说明够详细了吧,只要把 asInvoker替换成requireAdministrator,我们的程序就会默认要求管理员权限运行了,该下执行试试效果。
恩,窗口弹出来了。 看下程序图标:
大功告成...
9、二、下面再说下怎么给程序的按钮上也加上小盾牌图标吧
这我们就需要调用Win32 API了,要调用API么,要先引用命名空间——
using System.Runtime.InteropServices;
然后调用API
[DllImport("user32.dll")] private static extern IntPtr SendMessage(HandleRef hWnd, uint Msg, IntPtr wParam, IntPtr lParam);
///////////////////////////////////////////////////////////////////////
///
///
/// Button control to enable the elevated shield icon on.
///
///////////////////////////////////////////////////////////////////////
private void EnableElevateIcon_BCM_SETSHIELD(Button ThisButton)
{
// Input validation, validate that ThisControl is not null
if (ThisButton == null)
{
return;
}
// Define BCM_SETSHIELD locally, declared originally in Commctrl.h
uint BCM_SETSHIELD = 0x0000160C;
// Set button style to the system style
ThisButton.FlatStyle = FlatStyle.System;
// Send the BCM_SETSHIELD message to the button control
SendMessage(new HandleRef(ThisButton, ThisButton.Handle), BCM_SETSHIELD, new IntPtr(0), new IntPtr(1));
}
在Form上拖个Button,拖大一点哦,小了图标看不清
然后在Form1_Load里,用API把图标加到Button1上
private void Form1_Load(object sender, EventArgs e)
{
EnableElevateIcon_BCM_SETSHIELD(button1);
}
10、最后执行看下效果吧!
恩?盾牌为啥有点不一样呢,上面那个图标是Windows Server 2008或者Vista上的,Win7和Windows Server 2008 R2上应该是下面这样:
有错误的地方欢迎指证喔。
END


猜你喜欢
- ppt怎么设置两幅图同时做动画效果?想让ppt中的两张图形同时做一样的动作,该怎么设置呢?如果想实现两张图同时动作就需要组合图形,详细的操作
- UC浏览器云标签使用方法?很多用户在使用UC浏览器的时候都发现里面有个云标签,这是干嘛用的呢,下面就给大家分享云标签的使用方法。1、打开【U
- 快捷方式可以方便我们的操作,节省我们去寻找软件的时间,开始菜单内也是可以直接添加快捷方式的,那要怎么在最新的Win11系统中添加呢,很多用户
- WPS是我们工作时候常用的一个软件,非常方便,但是有一个让人烦的地方,那就是广告特别多,那么WPS该怎么去广告呢?下面小编和大家分享WPS去
- 常用wps表格的人,在使用过程中,如果细心的话,会发现鼠标指针形状也有很多种 ,而且不同形状的作用也各不相同。那么不同形状的指针形状代表什么
- 最近有Win10用户跟小编反映在电脑上运行绝地求生时,收到提示计算机丢失msvcp140.dll和vcruntime140.dll文件,这该
- 我们在excel表格中进行求差计算的时候,都是求差公式来操作的。下面就跟小编一起来看看吧。Excel表格使用求差公式的步骤打开Excel表格
- 很多小伙伴在使用电脑的时候遇见某个软件卡住。电脑动不了的情况,这个时候就需要调出任务管理器来结束这个进程,那么该如何呼出任务管理器呢?最简单
- 很多时候,为了自己的隐私或者重要文件不被人看到,我们都会将这些文件进行加密,但到了后面,不想被人看见的文件越来越多,这时候一个个加密就显得麻
- 显卡是每个计算机非常重要的一项功能,显卡通过做一系列的数学运算计算屏幕上每个像素点的颜色显示,很多小伙伴的电脑都是双显卡,那么台式电脑双显卡
- 最近有部分用户在升级win10后反映,发现任务栏右下角的喇叭会出现红叉且提示“未安装任何音频输出设备”,怎么办呢?下面小编就为大家介绍Win
- 一篇图文混排的Word文档,如何将Word图片导出呢?只提取其中的图片,不需要文字部分。可以通过下面几种方法来实现。word图片导出的第一种
- U盘pe系统是一个微型的操作系统,可以写入到U盘里面进行电脑操作系统的维护安装等操作,在电脑系统崩溃后就可以进入pe系统里面对系统进行维护或
- Excel作为办公软件中常用软件,其快捷键也颇多,下面小编就为大家介绍Excel快捷功能使用方法,希望能对大家有所帮助 &nbs
- 在日常使用电脑需要临时离开一会儿时,通常都是按Win+L快捷键锁屏,这时电脑屏幕上就会显示美观的锁屏壁纸,可是好景不长,MS酋长发现在锁屏超
- ps预设包含很多格式,ps怎样安装LUT调色预设?ps mac版怎样调用lut预设?ps怎么安装.3dl、.look、.cube预设?Ado
- 我们在使用wps表格的时候,可能会因为不小心而将菜单栏隐藏,那么,我们应该怎样显示隐藏的菜单栏呢?下面就让小编告诉你如何显示wps表格菜单栏
- 联想thinkpad x13是一款商用型办公笔记本电脑,采用了intel第11代酷睿i5处理器以及集成显卡,能够让用户们有着不错的办公体验,
- 日前在Dreamforce大会上,微软CEO萨提亚纳德拉再次提到了最新的全息增强现实眼镜——HoloLens。早在今年一月份的Win10发布
- PPT幻灯片图片还没播完就结束放映了该怎么办?在讲课的时候,可还没讲完ppt幻灯片就已经结束了,但是,有的课程并没有播放到,这是怎么回事?下