
方法一:
1找到VS2010的快捷方式:右击——“打开文件位置”
找到VS2010的启动项目devenvexe:右击——属性——兼容性——特权等级,以管理员权限运行;如果需要每个用户都以管理员权限运行,还可以“更改所有用户的设置”——特权等级,以管理员权限运行。
然后在项目的打开方式中确保以VS2010为默认打开程序就好了。
2 属性--连接器--清单文件-》UAC执行级别-》requireAdministrator (/level='requireAdministrator')
方法二
清单文件:建立如appmainfest的清单文件,在项目(属性--连接器--清单文件)添加清单文件
<xml version="10" encoding="UTF-8" standalone="yes">
<assembly xmlns="urn:schemas-microsoft-com:asmv1" manifestVersion="10">
<assemblyIdentityversion="1000" processorArchitecture="X86" name="VistaLogoDemo" type="win32"/>
<description>Description of your application</description>
<!-- Identify the application security requirements-->
<trustInfoxmlns="urn:schemas-microsoft-com:asmv3">
<security>
<requestedPrivileges>
<requestedExecutionLevellevel="requireAdministrator" uiAccess="false"/>
</requestedPrivileges>
</security>
</trustInfo>
</assembly>
GetCurrentDirectory是取得当前工作路径,如果程序中改变了这个路径比如用CFileDialog打开了一个文件,GetCurrentDirectory得到的结果会发生变化。
一般来说,取得程序运行目录的方法是用GetModuleFileName来获取当前Module的完整路径,当其第一个参数hModule置NULL的时候得到当前APP的绝对路径,然后去掉最后一个"\"以后的部分即文件名部分,就得到了程序运行目录。
大体上可以这样写(仅供参考):
char buffer[MAX_PATH+1];
::GetModuleFileName (NULL,buffer,MAX_PATH);
for(int i=MAX_PATH-1;i>=0;i--)
{
if((buffer+i)!='\\')
{
(buffer+i)=0;
}else{
break;
}
}
利用windows API获得:
CString GetAppPath() {CStringstrAppPath; // 保存结果
TCHAR szModuleFileName[MAX_PATH]; // 全路径名
TCHAR drive[_MAX_DRIVE]; // 盘符名称,比如说C盘啊,D盘啊
TCHAR dir[_MAX_DIR]; // 目录
TCHAR fname[_MAX_FNAME]; // 进程名字
TCHAR ext[_MAX_EXT]; //后缀,一般为exe或者是dll
if (NULL == GetModuleFileName(NULL, szModuleFileName, MAX_PATH)) //获得当前进程的文件路径
return FALSE;
_tsplitpath_s( szModuleFileName, drive, dir, fname, ext ); //分割该路径,得到盘符,目录,文件名,后缀名
strAppPath = drive;
strAppPath += dir;
return strAppPath;
}
F6:
生成解决方案
Ctrl+F6:
生成当前项目
F7:
查看代码
Shift+F7:
查看窗体设计器
F5:
启动调试
Ctrl+F5:
开始执行(不调试)
Shift+F5:
停止调试
Ctrl+Shift+F5:
重启调试
F9:
切换断点
Ctrl+F9:
启用/停止断点
Ctrl+Shift+F9:
删除全部断点
F10:
逐过程
Ctrl+F10:
运行到光标处
F11:
逐语句
以上就是关于vc++MCF/C++/C中怎样让应用程序获得或以管理员权限运行 ShellE全部的内容,包括:vc++MCF/C++/C中怎样让应用程序获得或以管理员权限运行 ShellE、vc++如何取程序的运行目录、VC++ 如何获取当前目录等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)