Vista+VC2005产生的exe(工程是Win32 SDK C),在本机能运行,但在WinXp下不能运行,是什么原因?提示是:由于应用程序配置不正确,应用程序未能启动。重新安装应用程序可能会纠正这个问题。
解决方案 »
- 带边框的对话框的大小在不同浏览器不一致
- 全屏模式下如何把输入法窗口重绘到缓冲页中?
- 地形检测问题 NFC + DX
- 我自己新创建的一个CListCtrl的继承类,如何将这个ListCtrl显示在对话框中
- 数据库存储异常!!!等待高手!!!非常急!!!!
- 关天*.h,*.lib调用问题,知道者快进,谢谢!
- 请教:已经编了大半的程序如何让他可以支持IE访问.就是可以作为Web服务器来用.多谢!
- DataGrid控件的DateSource如何设置?
- 怎样当DLL的函数被调用的时候,函数内部可以调用另一个程序?
- 链接多个DLL,各个DLL的初始化顺序是怎样确定的?
- 求SQL语句一条
- 网络编程小区提问没人回答,在这里问吧.
我们团队几个人,用XP中文,英文,2003,VISTA的都有。也没见VISTA下写的程序要重新编译才能到XP上运行。除非你调用了VISTA特定的API。楼主先用DEPENDS工具看一下。需要加载哪些DLL。
VS2005最常见的问题是生成的应用程序需要MSVC80.DLL或者MSVC80D.DLL。
网上介绍了很多解决的方法。1.有个德国牛人。重新编译了2005的C运行库。
2.在工程属性中,如果使用了MFC。选择在静态库中使用MFC。如果是非MFC工程,则:先选择中静态库使用MFC,应用后选回前一个选项。保存后重新编译工程即可。
如果无法定位某个API,提示信息会是:
无法定位“API名”在”动态库名“上。
而不是显示配置错误。
配置错误一般是MANIFEST中的相关DEPEND项无法加载。
且VC2005向导生成的程序默认WINVER和_WIN32_WINNT宏(在STDAFX.H中)的值为0X0501,也就是调用XP上所有函数需要的值。
如果要调用VISTA下增加的函数。 这个值需要是0X0600。否则编译都无法通过。
////////////////////////////////////////
VISTA下编译的exe,拿到xp运行,不是到xp编译