VS2005可以替代VC++6.0来开发MFC应用程序吗?该如何解决

VS2005可以替代VC++6.0来开发MFC应用程序吗?
不要基于.net   framework的。我试了一下,好像不行。不知道哪里有培训资料。

------解决方案--------------------
当然可以,基本上没有什么区别,只是许多处理字符串的函数有了带 _s 后缀的安全版
------解决方案--------------------
当然可以,vs2005在安全性检测上更严谨了,所以很多时候vc6上没有错误但到vs2005上可能会报错,所以要注意!
------解决方案--------------------
2005更支持C99标准.6.0的对标准支持非常差,当然不能怪MS,6.0出来的时候C99还没出.
2005的编译器,调试器.比6.0的好用.不过整体资源占用也大很多.增加了很多调试功能.
------解决方案--------------------
VC2005编译出来的程序文件,采用了manifest方式来指定dll文件。对于win98、win2000系统,把exe文件和VC的 dll连接库放到一起就成了

。对于winxp、win2003系统就要麻烦的多了,VC的连接库默认是被放到了winsxs目录下,结果造成在这些系统上,直接拷贝exe文件,往往

是不能运行(找不到msvcr80.dll、mfc80.dll文件等),或者在事件日志中报错。

解决方式:
方式一、在目标系统上安装2005版vcredist_x86.exe。

方式二、直接拷贝VS8目录下的VC \ redist \ x86 \ 目录下的 Microsoft.VC80.MFC、Microsoft.VC80.CRT、Microsoft.VC80.MFCLOC几个

文件夹,到exe所在的目录下,目录结构如下:
.\myapp.exe
.\myapp.dll
.\Microsoft.VC80.CRT\
.\Microsoft.VC80.MFC\
.\Microsoft.VC80.MFC\Microsoft.VC80.MFCLOC\
然后修改Microsoft.VC80.MFCLOC目录下的Microsoft.VC80.MFCLOC.manifest文件,将其中的version= "8.0.50727.42 ",修改为

version= "8.0.50608.0 "。


方式二的目录结构,在xp和2003下是没有问题的,但是在win98/win2000中,因为exe和dll不在同一目录下,就会出现找不到dll的问题。

方式三、
1、首先编译myapp.exe的时候,在配置中,选择生成单独的manifest文件,如:myapp.exe.manifest。
2、将myapp.exe、myapp.exe.manifest拷贝到一个目录下
3、将Microsoft.VC80.MFC、Microsoft.VC80.CRT、Microsoft.VC80.MFCLOC几个目录下的文件,都拷贝到myapp.exe所在的目录下。
4、将Microsoft.VC80.MFCLOC.manifest文件中的version= "8.0.50727.42 ",修改为version= "8.0.50608.0 "。
5、编辑myapp.exe目录下的所有 .manifest文件,将文件中的publicKey键值删除,一般是publicKeyToken= "1fc8b3b9a1e18e3b "
6、然后运行myapp.exe看看。
------解决方案--------------------
如果不使用CLR的话实际上除了界面操作有所变化外并没有本质的变化,当然2005更加优秀了,主要是工程的属性配置和原来的类向导发生了变化,并不是没有了,只是操作方式不同了
------解决方案--------------------
工程属性里设置静态链接MFC库就ok了,默认是动态链接,一般没有安装开发环境的机器都是没有MFC8.0的Dll的。这个跟.Net没关系!