vs2003,C++工程,如何将管理员权限内嵌到启动工程里
虽然已过时的不能在过时,还是记录一下,自己亲测有效。我说的都是在项目启动的exe工程上的设置,跟其他的dll工程无关。
1. 在工程的资源目录下,.rc存放的那个目录里,首先您建立这样一个文件Startup.manifest,文件里内容如下:
<?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="Startup.manifest"
type="win32"
/>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel level="requireAdministrator" uiAccess="false"/>
</requestedPrivileges>
</security>
</trustInfo>
</assembly>
里面有一行:name="Startup.manifest",指定了这个文件的名字。如果您要换名字的话,文件名跟这个一定要保持一致。
2. 工程添加这个资源文件
接着
继续
点击确定后,找到该资源文件的属性设置,如下:
将ID值设为1,然后您在重编一下这个exe,再次生成的exe就内嵌管理员打开权限了。我的截图里有个24,那是我已经添加过了的,截图只是为了示范。