避免c++程序在windows7或vista下关闭后出现程序兼容性助手
2014-07-04 15:53
267 查看
避免c++程序在windows7或vista下关闭后出现程序兼容性助手
在windows7下面编写C++程序,每次关闭程序时都会出现程序兼容性助手的提示,如下图:处理办法:在C++程序的文件夹里搜索到后缀名为manifest的文件,用VS或记事本打开。
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1"> <application> <!--The ID below indicates application support for Windows Vista --> <supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}"/> <!--The ID below indicates application support for Windows 7 --> <supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/> </application> </compatibility> </assembly>
将对应的 <compatibility> 节点复制到你的menifest文件assembly节内。
找到MT.EXE路径,我的是C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\x64\mt.exe
将要修改的exe文件和编辑好的manifest文件放到同一目录中(我将这两个文件都放到MT.EXE所在的目录下了),执行以下命令:
进入到MT目录:
cd C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\x64
修改应用程序:
mt.exe /manifest Setup.exe.manifest /outputresource:Setup.exe;1
参考资料:
MSDN里MT.EXE:
http://msdn.microsoft.com/zh-cn/library/ms235591(v=VS.100).aspx
让程序不触发Vista/Win7下应用程序兼容性助手弹出:
http://blog.csdn.net/maxuhuiabc/article/details/6081874
Vista和windows7系统下程序兼容性助手:
http://developer.51cto.com/art/200810/91713.htm
如果安装程序是自己写的话,最好是将上面的代码和安装程序编到一起去。
VC6 编的程序添加Manifest方法:
应用程序
名是abc.exe。
①:复制一个[应用程序名].manifest(用VC7生成的)到res目录
②:把[应用程序名].manifest改成abc.manifest文件名,
再把文件里的内容name="Microsoft.Windows.[应用程序名]"改成name="Microsoft.Windows.abc"
③:把abc.manifest添加到解决方案资源管理器
->Resource
Files文件夹里(可以拖动过去)
④:打开abc.rc文件(文本方式打开),在最末尾添加
IDR_MANIFEST RT_MANIFEST "res\\abc.manifest"
打开Resource.h文件在开头添加
#define IDR_MANIFEST 1
⑤:完成后重新编译程序就能看到Windows XP的风格啦
⑥:在windows98中必须要Mfc70.dll和MSVCR70.DLL这两个动态连接库
文件才能运行
相关文章推荐
- 避免c++程序在windows7或vista下关闭后出现程序兼容性助手
- 关于windows7、Vista操作系统下顺利换装xp过程中出现蓝屏问题
- windows7中出现联机检查解决方案并关闭程序的建议做法
- 跨线程调用控件时关闭窗体时如何避免出现异常:Cannot access a disposed object.
- 安装vista时出现"计算机不符合高级配置和电源接口(ACPI)标准",我是这么解决的.(windows7硬盘安装也适用)
- 打开office word 2003 时出现了“出现问题需要关闭,是否发送错误报告”
- 解决Windows7右键菜单出现乱码的详细步骤
- eclipse过一会就出现Adb connection Error:远程主机强迫关闭了一个现有的连接。
- 实现刷新页面,避免出现"不重新发送信息,则无法刷新网页",JS代码如下。
- mediaplayer 避免出现anr
- 防止多用户登陆同一账号及出现异常关闭软件现象
- 避免IE执行AJAX时,返回JSON出现下载文件
- windows7桌面预览不出现的解决方法
- Windows7下出现“不支持此接口”的解决方案
- umeng分享,第三方登录以及统计的api的封装,避免再出现api大幅改动而到处改源码
- Windows7下安装程序出现NSIS ERROR的解决办法
- Vista或windows7远程桌面控制服务器较慢 反应迟钝
- Vista(WIN7) 下先安装 VS 再装 IIS 7 运行出现 500.19 Error 的解决方法
- 关于Windows频繁打开关闭端口时出现的问题(转至老赵)
- myeclipse8.5工具------ 关闭myeclipse自动校验【特别是对js文件的校验,js文件没错,但出现X】