不知道现在用VS2010的大牛们,你们以前用过VC6.0没有... 如果你们都用过,不知道大家是否发现一个问题. 很多程序 在VC6.0中建立WIN32应用程序能够正确运行的,到了VS2010,同样建立WIN32应用程序去编译,没问题,但是运行的时候问题就来了. 要么不是达不到效果,要么就是程序崩溃.举例吧: 用SetTimer()设定定时器,在VC6.0中,不论你定义了几个定时器,都能正常运行,但是在VS2010时,当你用到第七个定时器并且程序运行到那里时,程序会自动崩溃。开始 以为是代码问题,但是看了许久也看不出问题,索性拉回VC6.0去编译,嘿,还正确运行了。
也不知道 为什么 ? 难道和头文件定义有关,还是VS2010的设置问题。
再举例: 同样是 WIN32应用程序, 用SDK中的 CreateWindow()建立 无边框的窗口, VC中能实现的效果,到了VS2010中,就直接运行时最小化,不能正常显示. 当然,不要问 有没有ShowWindow() UpdateWindow(). 本人虽不算大牛,但这种比较低级的错误还是不会犯的...大家知道 VC6.0和 VS中的VC差异在哪么?或者说vs要如何设置VC编程环境?
也不知道 为什么 ? 难道和头文件定义有关,还是VS2010的设置问题。
再举例: 同样是 WIN32应用程序, 用SDK中的 CreateWindow()建立 无边框的窗口, VC中能实现的效果,到了VS2010中,就直接运行时最小化,不能正常显示. 当然,不要问 有没有ShowWindow() UpdateWindow(). 本人虽不算大牛,但这种比较低级的错误还是不会犯的...大家知道 VC6.0和 VS中的VC差异在哪么?或者说vs要如何设置VC编程环境?
解决方案 »
- 不同对话框数据传递的问题
- listctrl 和 listview 区别是什么?
- 本机网络流量控制问题
- 为什么我选择组合框(Combo box)的类型为Drop List(Styles|Type|Drop List)后,对应的成员类型就不能为CString 型,只能是int 型了呢?
- mfc中做的3D动画,运行时cpu总是100%,如何解决?
- 慎用VC.NET:VC.net与VC6不同之处造成的混乱,如何解决??
- 请问哪里有mpeg文件编程的例子或文档?
- 基于对话框的程序中,主对话框如何能始终在所有窗口的最上面?
- 5年WINDOWS底层开发经验,请大家帮我估估价
- Windows游戏编程是不是要用C win32API SDK来编?
- 数据库读取图片数据,OleLoadPicture返回IPicture为空
- 百分求助:string内存泄露问题。
你vc6和vc2010是不是在同一个操作系统
当前版本与上一个版本的不同之处。累积起来就是2010与VC6的差异了。
VC6诞生于1998年,当时的应用环境与现在差别按计算机时间来讲可以说是间隔几个世纪了。
VC6不完全符合C++标准规范,因此一些不够严谨的代码在VC6中可以运行,到了2010就不行了。
这是绝对是进步。而不是退步。
至于你说的具体问题,十有八九应该检查你的代码,而且,VS2010说到底是一个C++编译器,
你说的问题还有可能是SDK的版本升级过程中的改变,VC6用的SDK、MFC那些.H都很久远。
到VS2010已经升级过好几次了。其中大批的函数有了变化,一些以前可以做的事,其行为和调用
方式都起了变化,因此得到的结果就是不一样的。这很正常,跟2010没有丝毫关系。
除非 1)对代码大小非常在意。2)应用环境VC6已经满足。3)执著热爱V6,否则,早就应该
换代了。