VC 怎么获取windows7系统管理员权限!!!

datalink123 2010-02-01 08:12:18
VC 怎么获取windows7系统管理员权限!!!
...全文
9799 26 打赏 收藏 转发到动态 举报
写回复
用AI写文章
26 条回复
切换为时间正序
请发表友善的回复…
发表回复
chrc1122 2011-08-06
  • 打赏
  • 举报
回复
楼主是不是坏淫?
bbjiabcd 2011-08-05
  • 打赏
  • 举报
回复
再强调一下,如果你没有关闭系统的UAC提示,在不出现提示框的情况下,你的程序是无法获取管理员权限的。这是Win7、Vista区别于xp的重要一点,这样能使系统更安全,假如能够实现,那么UAC就没有用了,微软公司也不用赚钱了。最后,引用一下xuzhx的那句话:
[Quote=引用 19 楼 xuzhx 的回复:]
别做梦了! 你想以普通用户权限登录,然后偷偷摸摸的做管理员才能干的事情,已经不可能了。
[/Quote]
小驴 2011-08-05
  • 打赏
  • 举报
回复
关注ing
icansaymyabc 2011-08-05
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 datalink123 的回复:]

我想要做的是,现在我在本机上比如:D盘上有一个文件,要考入到系统盘C的windows目录下,但是我权限不够,考的时候会提示,当前windows目录拒绝你的操作,必须的有管理员权限才可以。我希望的是,考入之后系统没有任何的提示,直接就考完。用vc才编写!

我十万火急啊,诸位大虾,求助啊!
[/Quote]

在你的本机上,你把UAC关掉,提示就不会出来了。

在别人没有关闭UAC的机器上,你休想啊你休想!!
我才是心翼 2011-08-05
  • 打赏
  • 举报
回复
我觉得不可能,LZ明显在做偷偷摸摸的事情

普通用户搞定管理员的事,看起来想去网吧做坏事

D盘弄到C盘,明显了

WIN7有这么不靠谱吗
bbjiabcd 2011-08-05
  • 打赏
  • 举报
回复
首先要说,在你没有修改系统设置关闭UAC提示时,你需要拷的时候没有提示,也不被系统拒绝,就必须在程序运行时弹出UAC框进行确认,否则,是不可能的。
以下介绍的是如何让程序启动时自动弹出UAC提示,获取系统管理员权限,而不需右击程序,选择用管理员身份运行。
[Quote=引用 3 楼 bilaopao 的回复:]
如果是vc6.0 需要嵌入manifest文件,给与requireAdministrator参数,这个文件你可以google一下。

如果是2005或者2008 就更简单了,直接项目右键---属性---连接器---清单文件---uac执行级别 选择requireAdministrator 重新编译 这样你的程序直接运行就拥有管理员权限了。
[/Quote]
VC2005或2008可用上述bilaopao的方法,而VC6可用以下方法:
(转自 http://www.slyar.com/blog/mfc-requireadministrator.html)
1、打开工程的资源视图

2、选择"Insert resource",选择"custom","resource type"填24,资源ID为1,然后把以下内容复制到资源内容中保存(看到的是16进制内容)

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity version="1.0.0.0" processorArchitecture="X86" name="mulitray.exe.manifest" type="win32"/>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel level="requireAdministrator" uiAccess="false"/>
</requestedPrivileges>
</security>
</trustInfo>
</assembly>

3、编译连接,此时就可以看到程序图标上出现了小盾牌,运行程序时弹出UAC对话框,获得管理权限

注:

requestedExecutionLevel可以指定为三个值:

asInvoker:默认选项,新的进程将简单地继承其父进程的访问令牌。

highestAvailable:应用程序会选择该用户允许范围内尽可能宽松的安全上下文。对于标准用户来说,该选项与asInvoker一样,而对于管理员来说,这就意味着请求非限制访问令牌.

requireAdministrator:应用程序需要管理员的非限制访问令牌。运行该程序时,标准用户将要输入管理员的用户名和密码,而管理员则要在弹出的确认对话框中进行确认。
手机写程序 2010-11-16
  • 打赏
  • 举报
回复
先安装一个service,service以system运行你的进程.
xuzhx 2010-11-16
  • 打赏
  • 举报
回复
别做梦了! 你想以普通用户权限登录,然后偷偷摸摸的做管理员才能干的事情,已经不可能了。
Lucas020 2010-11-15
  • 打赏
  • 举报
回复
做一个*.manifest文件,
我是这样做的:假设你生成的是: SW.exe 执行文件,
(1)在《C:\Program Files\Microsoft Visual Studio 8\VC\bin》文件夹内(是《mt.exe》所在的文件夹,根据你安装VC位置不同路径可能不同)创建一个名为《SW.exe.manifest》的文件(可以是*.txt修改成的,);
SW.exe.manifest文件的内容如下(注意两处“SW”):
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
processorArchitecture="x86"
version="5.1.0.0"
type="win32"
name="SW"
/>
<description> SW </description>
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
publicKeyToken="6595b64144ccf1df"
language="*"
processorArchitecture="x86"
/>
</dependentAssembly>
</dependency>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel level="requireAdministrator" uiAccess="false"/>
</requestedPrivileges>
</security>
</trustInfo>
</assembly>

(2)将SW.exe拷到该文件夹中;
(3)在windows开始菜单的运行中输入CMD命令打开运行;
(4)将CMD转到以下目录《C:\Program Files\Microsoft Visual Studio 8\VC\bin>》
(5)输入 mt.exe -manifest SW.exe.manifest -outputresource:SW.exe;#1
(6)回车就行了(此时你的SW.exe的修改日期有更新,证明是可以了。
momosp 2010-11-13
  • 打赏
  • 举报
回复
关注这个帖子啊
lzjdlsl 2010-02-06
  • 打赏
  • 举报
回复
关注
cschenshou 2010-02-02
  • 打赏
  • 举报
回复
2008里面自带一个选项:
属性-配置属性-连接器-清单文件-Uac执行级别,里面可以选
woyaowenzi 2010-02-01
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 lisunlin0 的回复:]
在《windows核心编程》第五版里面有提(尽管是关于vista的,但同样适用于win7),大约两种方法:
1、使用manifest文件控制
2、创建一个新的使用管理员权限的进程
[/Quote]
对,我和楼上的想法一样
woyaowenzi 2010-02-01
  • 打赏
  • 举报
回复
在工程中添加一个文件,叫 a.exe.manifest的文件,文件内容如下,然后重新编译,在启动这个程序的时候,应该就会要求你提升权限,运行的时候就不再需要提升了。我没有测试过。你可以试试。
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges>
<requestedExecutionLevel
level="requireAdministrator"
/>
</requestedPrivileges>
</security>
</trustInfo>
</assembly>
sunlin7 2010-02-01
  • 打赏
  • 举报
回复
在《windows核心编程》第五版里面有提(尽管是关于vista的,但同样适用于win7),大约两种方法:
1、使用manifest文件控制
2、创建一个新的使用管理员权限的进程
woyaowenzi 2010-02-01
  • 打赏
  • 举报
回复
除非让你的应用程序在启动时就以Admin权限启动,这样,在运行的过程中,就不出再弹出提升权限对话框
bilaopao 2010-02-01
  • 打赏
  • 举报
回复
用CreateProcessAsUser()和ShellExecuteEx都可以以管理员权限运行。

即使有提示也只是在运行程序的时候有提示。 拷贝的时候不会提示的。
zwfgdlc 2010-02-01
  • 打赏
  • 举报
回复
如果是自身进程,参考下进程提权
http://hi.baidu.com/%B7%E7%D6%AE%D2%E2/blog/item/c3fbf2198d7064138718bf7c.html
http://blog.csdn.net/abcpanpeng/archive/2009/12/06/4953529.aspx
zwfgdlc 2010-02-01
  • 打赏
  • 举报
回复

CreateProcessAsUser()

函数,以有管理员权限的帐户运行程序
Tr1j5n 2010-02-01
  • 打赏
  • 举报
回复
嵌入Manifest啊
加载更多回复(6)
学生学籍管理系统需求分析报告 §1 概述 编写说明: 本章描述本软件开发的背景,系统目标,用户的业务情况,以便于需求理解。 § 1.1背景 传统的学校学籍管理方法、由于分散管理,易发生数据丢失,劳动强度高,速度慢。使用计算机可以高速、快捷地完成以上工作。特别是在计算机联网后,数据在网上传递,可以实现数据共享,避免重复劳动,规范教学管理行为,从而提高了管理效率和水平。学籍管理信息系统以计算机为工具,通过对教务管理所需的信息管理,把管理人员从繁琐的数据计算处理中解脱出来,从而全面提高教学质量。 § 1.2系统目标 学籍管理信息系统以计算机为工具,通过对教务管理所需的信息管理,把管理人员从繁琐的数据计算处理中解脱出来,使其有更多的精力从事教务管理政策的研究实施,教学计划的制定执行和教学质量的监督检查,从而全面提高教学质量。 § 1.3业务模式 本系统是运行在WindowsXP等操作系统环境下的多台计算机构成的局域网, 现在学校各部门分别使用不同数据库,各部门之间的信息还不能实现网上共享。由于学校的各个部门都需要一些学生的基本信息,所以各个部门都有一份学生档案。一个部门的改动,将导致其他各部门必须修改,否则,学生的信息将不一致。 高校学生学籍管理系统将采用B/S模式,学生的信息由各用户在规定的权限下在各自的工作站上录入,统一保存在系统服务器上,既可集中管理,有可让各部门管理自己负责的信息。信息上网后各用户可查询,调用,达到全校信息共享。 §2用户需求 编写说明: 此系统专门为高校学籍管理所设置。本节主要描述用户需求的使用范围,功能要求信息采集与各部门的使用权限 § 2.1使用范围 按西安交通大学城市学院学生学籍状况的系统管理(本科生用学年学分制)。 系统中保留4个年级学生的信息,学生毕业一年后信息转储,但随时可以查询,输出。 § 2.2功能要求 •学生档案管理: 学生的一般情况,及奖励,处分情况; •学生成绩管理: 学习成绩,补考成绩; •学籍处理: 学生留降级处理,休复学处理,退学处理; •日常教务管理: 日常报表,如通知书,补考通知书等,学生学习成绩的各种分类统计; •毕业生学籍处理: 结业处理,毕业处理,授位处理,学籍卡片等。 § 2.3信息采集与各部门的使用权限 每学期考试完毕由各系录入成绩,然后由教务科收集。为了信息的安全和数据的权威性,对于网上信息的使用权限和责任规定如下: 数据收集前的系统权限 学生档案 学生奖惩 学生成绩 学籍处理 补考成绩 教学计划管理 各种等级考试 学生工作处 0 ? 0 ? ? ? ? ? ? 各系 ? ? 0 ? ? ? ? ? 教务科 ? ? ? 0 ? 0 ? ? 0 ? 师资科 ? ? ? ? ? 0 ? ? 院长办公室 ? ? ? ? ? ? ? 注:0、登录,修改,处理权。 ?、查询权 § 2.4数据完整性、正确性: 1、 可按某学生某学年考试及补考成绩,自动生成该学生是否升留降级,退学。 2、 可按某学生在校期间累计重修科目门数和成绩自动生成该学生是否结业,毕业,授位。 3、 可按某学生因非成绩原因所引起的学籍变更作自动处理。 4、 可按每学期各年级班学生考试成绩自动生成补考名单,科目。 5、 可按每学期各年级学生考试成绩自动生成某课程统计分析表。 6、可按同一年级学习成绩进行同一课程不同班级间成绩比较 § 2.5 性能需求 因为学籍管理系统存储学生信息,所以数据库系统应该具有备份和恢复功能,保证学生数据库的长期完整性和正确性。另一方面,作为系统的服务器应该能够长期无故障的运行,而且能够便于管理员的操作。安全性要求比较高,对业务逻辑必须封装,避免有人登陆他没权限的网页,避免黑客从数据流中截取敏感数据。 § 2.6 其他需求 普通用户的需求:对于只有查看权限的用户,一般是通过上网浏览学校网页来查看数据的。 各部门管理员:能够对系统进行设置,以适应不同用户的需求。对不同系的管理员分配不同的权限,教务处系统管理员具有最高的管理权限。 § 2.7用户平台要求 系统主要使用于高校的局域网, WinXP等环境下,Java,Vc,Vb连接数据库,本系统需要DBMS放学生学籍数据库。可进行查询,修改、处理等。 §3 业务逻辑和数据流图 本系统暂不考虑与其他系统交换数据,而是作为一个独立的系统。但是,他应该能够向学校的上级主管部门提交学生的信息。 § 3.1业务流程与业务逻辑

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧