windows 7编程:在按钮中加入管理员权限运行盾牌图标教程
2025-11-03 02:32:40阅读量:1 字体:大 中 小
这篇教程是向大家介绍Windows 7按钮中加入管理员权限运行盾牌图标过程,本教程分两部分,第一,如何实现软件本身运行时申请管理员权限,第二,如何在软件窗体内的按钮上面加入盾牌图标(意味着本功能需要管理员权限执行)。
步骤/方法
1、一、软件自身运行时的管理员权限申请机制
2、在开启UAC的时候,在Windows 7(Windows Server 2008 R2)或者Vista(Windows Server 2008)中执行程序默认是以一种权限较低的方式执行的,但是在这种方式下,我们有些操作会失败(比如修改注册表,监听端口,往系统目录写入文件等),要实现这些操作,就需要我们以管理员权限执行程序了。
3、当然,只有在程序上右键,选择“以管理员执行”就可以,不过如何让程序自己自动以管理员权限来运行呢,这就需要Manifest了。
4、首先我们来新建个项目(懒得改名字了,就叫WindowsFormsApplication1吧)
这我们就需要调用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,拖大一点哦,小了图标看不清
然后在Form1_Load里,用API把图标加到Button1上
private void Form1_Load(object sender, EventArgs e)
{
EnableElevateIcon_BCM_SETSHIELD(button1);
}

10、最后执行看下效果吧!
恩?盾牌为啥有点不一样呢,上面那个图标是Windows Server 2008或者Vista上的,Windows 7和Windows Server 2008 R2上应该是下面这样:
有错误的地方欢迎指证喔。
END
免责声明:
本文《windows 7编程:在按钮中加入管理员权限运行盾牌图标教程》版权归原作者所有,内容不代表本站立场!
如本文内容影响到您的合法权益(含文章中内容、图片等),请及时联系本站,我们会及时删除处理。
推荐阅读

公链Sui推出首款Web3掌机SuiPlay0x1!需要用加密货币付款购买
6Co数字认知网 - 区块链数字货币实时行情平台Sui公链开发商MystenLabs,今(3)日推出了首款Web3原生的掌上游戏机SuiPlay0x1,目前预订已经开放,预计将于2025上半年出货。6...
阅读: 64

传NFT借贷协议ParaSpace挪用资金!大量用户正撤出资金
aWn数字认知网 - 区块链数字货币实时行情平台今日下午,NFT借贷协议ParaSpace传出内部纠纷与挪用公共资产,各大社群表示保险起见请尽快提快提款,目前USDT贷款APY已突破82%,ETH贷款...
阅读: 78

Magic Eden拆分国际、美国双平台!应对SEC潜在监管风险?
mfg数字认知网 - 区块链数字货币实时行情平台全球最大NFT市场之一的OpenSea日前才传出正面临美国证 监 会(SEC)的证券调查,而Magic Eden恰好在此时宣布改为双平台,是否是为了应对...
阅读: 66

基于Ronin!Gravity推出Web3链游新作Ragnarok:Monster World
AId数字认知网 - 区块链数字货币实时行情平台知名MMORPG游戏仙境传说(Ragnarok,RO),其开发商Gravity于今年宣布推出「第三款」结合区块链与NFT元素与仙境传说IP的新游戏&md...
阅读: 46

TON正空投给NFT用户!分发超10万枚TON
upz数字认知网 - 区块链数字货币实时行情平台公链TON在傍晚发文表示,正在向生态活跃的NFT交易者和持有者空投105,600枚TON(价值约55万美元),快照时间是:4月23日上午8点(CEST)...
阅读: 44

前美国第一夫人梅拉尼娅推出MetaRose NFT
C9Y数字认知网 - 区块链数字货币实时行情平台美国前第一夫人推「虚实整合」项链近期涉入选举诈欺「封口费案」的美国前总统特 朗 普(Donald Trump),其推出的NFT交易量持续降低。不过美国前...
阅读: 80

NFT到底是什么?怎么理解NFT?NFT为什么这么贵?
NFT目前正在席卷数字艺术和收藏品世界。正如全世界每个人都认为比特币是货币的数字答案一样,NFT现在被宣传为收藏品的数字答案。结果,由于向新的加密货币受众的大量销售,数字艺术家的生活正在发生变化。简单...
阅读: 66

Magic Eden是什么平台?Magic Eden优势是什么?
NFT一直都是加密市场的热门领域,而作为领先的跨链NFT平台MagicEden的使命就是通过为创作者和收藏家提供一个用户友好和安全的交易市场,彻底变革数字艺术和NFT空间。MagicEden平台允许数...
阅读: 45

Yuga Labs:不会再控制CryptoPunks!使其成完全去中心化数字藏品
4GM数字认知网 - 区块链数字货币实时行情平台NFT界的元老级项目CryptoPunks,在被无聊猿背后的母公司Yuga Labs收购后,今日迎来治理上的重磅消息。Yuga Labs共同创办人兼执行...
阅读: 63

足球巨星C罗携手币安推出第四个NFT系列!29日上线币安NFT市场
fny数字认知网 - 区块链数字货币实时行情平台传奇足球巨星C罗(Cristiano Ronaldo)几天前的推文透露,其将与交易所币安合作推出第4个NFT系列,将于29日正式上线币安NFT市场。然而...
阅读: 69
猜你喜欢

以太坊 8,000 美元价格飙升:宏观和链上催化剂分析
2025-11-10

Ozak AI 的最新加密货币产品及其在人工智能金融领域的颠覆性潜力
2025-11-10

XRP 鲸鱼正在涌入,现在最值得购买的加密货币
2025-11-10

传闻“Pro”级和 POLY 代币计划推动 Polymarket 加速增长
2025-11-10

170亿美元比特币的幻觉——散户如何为企业“创新”买单
2025-11-10

谷歌揭露朝鲜的链上黑客实验
2025-11-10

比特币跌破 STH 成本基础 – 为什么这可能是买入信号?
2025-11-10

Mt. Gox 的最终还款期限即将到来——但市场可能几乎不会注意到
2025-11-10

以太坊的短期价格复苏:宏观驱动和山寨币情绪分析
2025-11-10
