Win7编程:在按钮中加入管理员权限运行盾牌图标

admin 2025-09-17 阅读:40 评论:0
Win7之家(www.win7china.com):Win7编程:在按钮中加入管理员权限运行盾牌图标 下文分两部分,第一,如何实现软件本身运行时申请管理员权限whatsapp登录,第二,如何在软件窗体内的按钮上面加入盾牌图标(意味着本功能需...

Win7之家(www.win7china.com):Win7编程:在按钮中加入管理员权限运行盾牌图标

下文分两部分,第一,如何实现软件本身运行时申请管理员权限whatsapp登录,第二,如何在软件窗体内的按钮上面加入盾牌图标(意味着本功能需要管理员权限执行)。

一、软件自身运行时的管理员权限申请机制

在开启UAC的时候,在Win7(Windows Server 2008 R2)或者Vista(Windows Server 2008)中执行程序默认是以一种权限较低的方式执行的,但是在这种方式下,我们有些操作会失败(比如修改注册表,监听端口,往系统目录写入文件等),要实现这些操作,就需要我们以管理员权限执行程序了。

当然,只有在程序上右键whatsapp网页版,选择“以管理员执行”就可以,不过如何让程序自己自动以管理员权限来运行呢whatsapp官网,这就需要Manifest了。

首先我们来新建个项目(懒得改名字了,就叫WindowsFormsApplication1吧)

Win7编程_按钮加入管理员权限盾牌图标_win7如何以管理员身份运行cmd

按F5执行下(恩,貌似没有啥问题

空文档,有问题才怪...

win7如何以管理员身份运行cmd_按钮加入管理员权限盾牌图标_Win7编程

然后我们添加Manifest(中文版叫“应用程序清单文件”)

Win7编程_按钮加入管理员权限盾牌图标_win7如何以管理员身份运行cmd

按钮加入管理员权限盾牌图标_win7如何以管理员身份运行cmd_Win7编程

下面我们看下Manifest的内容——

1.0" encoding="utf-8"?>
1.0" xmlns="urn:schemas-microsoft-com:asm.v1" xmlns:asmv1="urn:schemas-microsoft-com:asm.v1" xmlns:asmv2="urn:schemas-microsoft-com:asm.v2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  1.0.0.0" name="MyApplication.app"/>
  urn:schemas-microsoft-com:asm.v2">
    
      urn:schemas-microsoft-com:asm.v3">
        
        asInvoker" uiAccess="false" />
      
    
  

内容里的说明够详细了吧,只要把 asInvoker替换成requireAdministrator,我们的程序就会默认要求管理员权限运行了,该下执行试试效果。

按钮加入管理员权限盾牌图标_Win7编程_win7如何以管理员身份运行cmd

恩,窗口弹出来了。 看下程序图标:

大功告成...

二、下面再说下怎么给程序的按钮上也加上小盾牌图标吧

这我们就需要调用Win32 API了,要调用API么,要先引用命名空间——

using System.Runtime.InteropServices;

然后调用API

[DllImport("user32.dll")]

        private static extern IntPtr SendMessage(HandleRef hWnd, uint Msg, IntPtr wParam, IntPtr lParam);
        ///////////////////////////////////////////////////////////////////////
        /// 
        ///     Enables the elevated shield icon on the given button control
        /// 
        /// 
        ///     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,拖大一点哦,小了图标看不清

按钮加入管理员权限盾牌图标_Win7编程_win7如何以管理员身份运行cmd

然后在Form1_Load里,用API把图标加到Button1上

private void Form1_Load(object sender, EventArgs e)
        {
            EnableElevateIcon_BCM_SETSHIELD(button1);
        }

最后执行看下效果吧!

 

按钮加入管理员权限盾牌图标_win7如何以管理员身份运行cmd_Win7编程 

恩?盾牌为啥有点不一样呢,上面那个图标是Windows Server 2008或者Vista上的,Win7和Windows Server 2008 R2上应该是下面这样:

win7如何以管理员身份运行cmd_Win7编程_按钮加入管理员权限盾牌图标

有错误的地方欢迎指证喔。

版权声明

本文仅代表作者观点,不代表百度立场。
本文系作者授权百度百家发表,未经许可,不得转载。

分享:

扫一扫在手机阅读、分享本文

3502文章数 0评论数
热门文章
  • 详细指南:WhatsApp国内使用方法全攻略-下载安装、注册登录及功能使用攻略

    详细指南:WhatsApp国内使用方法全攻略-下载安装、注册登录及功能使用攻略
    一、下载与安装WhatsApp WhatsApp是一款全球使用范围极广的即时通讯软件,不仅可以实现文本聊天,还能进行语音、视频通话WhatsApp中文版,发送文件等功能。由于众所周知的原因,国内用户想要下载和安装WhatsApp可能会遇到一些困难。不过,只要按照以下步骤操作,就能顺利完成WhatsApp的下载和安装。 首先,我们需要解决的是下载问题。由于WhatsApp在国内的应用商店无法直接下载,所以我们需要寻找其他的下载途径。Android用户可以选择到各大安卓市场搜索下...
  • 苹果IOS5.1.1机完美越狱

    苹果IOS5.1.1机完美越狱
    越狱工具下载:(需手动复制: http://bbs./read-htm-tid-4804612.html ) 详细的越狱教程: Absinthe 2.0.4的越狱方法与Absinthe 1.0的越狱方法完全一样,非常简单的“傻瓜一键式”。不过这里绿毒有说明,最好重新刷固件。支持越狱设备IOS5.1.1的固件下载地址请点击本站的IOS固件下载,看下图: 下载完固件之后,把设备连接iTunes,开始刷固件。你也可以选择不刷,但是在越狱的过程之中,新的系统在越狱时会比较的顺利,...
  • 电脑微信的聊天照片文件在哪里微信图片保存电脑哪个文件夹

    电脑微信的聊天照片文件在哪里微信图片保存电脑哪个文件夹
    1. 怎么找到微信聊天图片在哪个文件夹里 图片保存路径:/storage/emulated/tencent/MicroMsg/WeiXin/文件夹,这个是完整路径。而在文件夹中只需要找到/tencent/MicroMsg/WeiXinWhatsApp中文版,就可以了,前面两个文件夹是系统根目录。以下是保存及查找图片的方法步骤介绍。 第一步、找到桌面的微信APP,直接点击打开这个微信的APP。 2. 电脑微信图片保存在哪个文件夹 个人微信文件夹。 电脑版微信聊天的图片,都保存到...
  • Windows 11版WhatsApp将从UWP/Native切换回WebView2打包模式

    Windows 11版WhatsApp将从UWP/Native切换回WebView2打包模式
    Meta(最近更名为 Meta AI)悄然宣布,WhatsApp 将在 Windows 11 上放弃 UWP(WinUI)WhatsApp中文版,退回采用基于 Chromium 的容器。这意味着 WhatsApp 又回到了几年前的样子。由于 web.whatsapp.com 一直领先于 Windows 应用开发,它确实拥有一些新功能,但速度更慢,占用更多内存。 如果独立开发者因为无力维护所有平台的代码库而选择 Web 应用程序,那是一回事,但当像 Meta 这样价值万亿美元...
  • 小米下載WhatsApp的完整指南:安装与使用注意事项

    小米下載WhatsApp的完整指南:安装与使用注意事项
    综上所述,确保您的小米手机具备以上条件,将有助于您顺利下载和安装WhatsApp,享受便捷的通讯服务。在满足这些条件后,您就可以按照后续步骤进行WhatsApp的下载和安装。 2. 下载和安装WhatsApp的具体步骤 在小米手机上下载和安装WhatsApp的具体步骤相对简单,但需注意一些特殊情况。首先,确保你的手机系统已更新到最新版本,以保证最佳的兼容性。由于安卓手机商店内无法直接找到WhatsApp,你可以通过APKPure等第三方应用商店进行下载。打开APKPure应用...