精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>编程开发>>C/C++>>编辑、编译、调试与发行>>Re:Visual studio.net下编译的程序在win98下运行的兼容问题?

主题:Re:Visual studio.net下编译的程序在win98下运行的兼容问题?
发信人: wecoh()
整理人: wenbobo(2002-12-24 09:19:54), 站内信件
【 在 croon 的大作中提到:】
:我在Visual studio.net中编写的VC程序,在win 98下运行,发现在我使用CFileDialog的地方无法弹出“打开文件”框,而在win 2000下就没有问题。后来我发现win 98下的comdlg32.dll和 win 2000下的comdlg32.dll文件版本不一致,但用win 2k中的comdlg32文件去替换win 98下的这个文件会造成win 98运行不正常,请问哪位高手有办法? 


 你的问题我在VC++6下生成的projtct,在VS.NET下编辑运行时遇到过。
 你在 StdAfx.h 的文件加入以下的说明应该就无事的啦,你试试,不行再问,因为我是很久之前遇过的当时好似就是这样解决的,以下的说明是来自于,VS.NET生成的projtct文件的

#ifndef VC_EXTRALEAN
#define VC_EXTRALEAN // 从 Windows 标头中排除不常使用的资料
#endif

// 如果您必须使用下列所指定的平台之前的平台,则修改下面的定义。
// 有关不同平台的相应值的最新信息,请参考 MSDN。
#ifndef WINVER // 允许使用 Windows 95 和 Windows NT 4 或更高版本的特定功能。
#define WINVER 0x0400 //为 Windows98 和 Windows 2000 及更新版本改变为适当的值。
#endif

#ifndef _WIN32_WINNT // 允许使用 Windows NT 4 或更高版本的特定功能。
#define _WIN32_WINNT 0x0400 //为 Windows98 和 Windows 2000 及更新版本改变为适当的值。
#endif

#ifndef _WIN32_WINDOWS // 允许使用 Windows 98 或更高版本的特定功能。
#define _WIN32_WINDOWS 0x0410 //为 Windows Me 及更新版本改变为适当的值。
#endif

#ifndef _WIN32_IE // 允许使用 IE 4.0 或更高版本的特定功能。
#define _WIN32_IE 0x0400 //为 IE 5.0 及更新版本改变为适当的值。
#endif

#define _ATL_CSTRING_EXPLICIT_CONSTRUCTORS // 某些 CString 构造函数将是显式的

// 关闭 MFC 对某些常见但经常被安全忽略的警告消息的隐藏
#define _AFX_ALL_WARNINGS


----
Good Luck......

[关闭][返回]