首先我发现的MFC不同
1:CFileDialog变为更全理,类似WinAMP3.0的打开文件方式。
2:CFile中没有了ReadHuge,WriteHuge,统一为Read,Write。
3:RichEditCtrl变为了RichEditCtrl2.0,解决了在一个对话框上再建一个对话框上放RichEditCtrl时,显示汉字乱码的Bug。如果大家有新发现的,列出来,让大家一起学习、进步。

解决方案 »

  1.   

    看看msdn中的
    Major Changes from Visual C++ 6.0 to Visual C++ .NET
    这一部分内容不就行了。太多了就不贴出来了
      

  2.   

    没用过.net,比VC6好很多吗?
      

  3.   

    偶也没有用过.net
    VC也是刚用的
      

  4.   

    我也想这样问...
    到底是应用领域不同,还是.net就比MFC好?
      

  5.   

    到底是不是DotNet比VC6牛了很多?到底是不是DotNet比VC6更有钱途?
      

  6.   

    忘了写的:
    CEdit控件没有了CString,采用unsinged char 或 char来代替。另外取消了CString独有的字符最大、最小值功能。
      

  7.   

    听说好象可以用当作VB的超集的超集来编程啦!进行托管的一些类VB的方法的编程不知是不是真的?
      

  8.   

    不过依然要大内存,MSDN2003变得十分的慢,在2K/XP上的对话框程序在WIN9X/Me下大小会改变,这一点如果不能解决,就是用户不用它的最大阻碍了。
      

  9.   

    其实vc.net2003的MFC精简了,部分加强了,这是好的,MFC已十分庞大,再加新类只会更大,不如在内部精简或加强更好。图标可直接用256色了,内嵌汇编支持到P4指令了。
      

  10.   

    在MFC编ACTIVEX控件变简单了,
    MFC映射时直接将BSTR转换为LPCTSTR
    比如:
    一个控件有这样一个接口
    VARIANT_BOOL GetObject(BSTR str)
    则MFC在控件类中映射为
    VARIANT_BOOL GetObject(LPCTSTR str)
    这样就省去了转换的麻烦,其实在VS6中也能这么用,只不过IDE不自动给你转换,要你自
    已动手,
    还有就是MIDL增加了几种类型,上面的VARIANT_BOOL就是新增的,用于支持VC中的BOOL
      

  11.   


    ===================================================
    Digit Pro space  欢迎您
    http://www.dpspace.com
    有什么问题到论坛上发表,我将尽我全力为您解决
    论坛欢迎高手注册加入,让我们共同进步
      

  12.   

    不同之处:集成开发环境集成开发环境(IDE)整合了基于服务端开发模式和大大改进的C++编译器,同时MFC和ATL也都做了重要的改进,许多公用的类被二者共享,VC++.NET需要一个新的MFC支持库MFC70.DLL,这个支持库不再与MFC42.DLL兼容,但是源程序依然可以让VC++.NET和VC6兼容。在VC++.NET中,消息映射机制变得更加安全,但也要对某些代码稍作修改。在VisualStudio.NET一整套开发平台中,VC++.NET惟一需要有额外支持库的语言,即需要MFC支持库MFC70.DLL,这样VC++.NET既可以开发出面向.NET的应用系统也可以开发传统的基于Win32和MFC的应用系统。添加新类VC++.NET中,系统的头文件(.h)都根据最新的SDK平台做了相应的修改,增加了支持Windows2000和WindowsXP中的相关特性。MFC和ATL中在许多领域也增加了一些实用的类,例如在安全方面(Cdacl、Csacl、Csid、CaccessToken、CtokenGroups、CtokenPrivileges、CSecurityDesc、CsecurityAttributes等)、Web服务方面、数据库访问方面等,尤其是通过采用新的OLEDB类和属性访问数据库速度和性能大大提高。ATL7.0中增加了5中类模板:CatlArray、CatlList、CatlMap、CRBMap、CRBMultiMap。为了避免2000年缺陷这样的类似错误发生,VC++.NET对时间和日期采用了64位记法,在类CTime和CtimeSpan中也增加了支持64位记法的方法,例如CTimeSpan::GetDays64、CTime::GetTime64。另外,VC++.NET也支持线程池(ThreadPools)机制,通过线程池来提高应用服务器的响应能力,为此VC++.NET在MFC7.0中提供CthreadPool类。
    GDI+及相关APIGDI+及其相关API提供了大量新的图形技术支持,不过这套API函数仅支持.NET平台下的应用。为了使用GDI+,需引用头文件gdiplus.h和链接库gdiplus.lib。GDI+与传统的GDI编程模型不大相同,代替选择刷子和笔到某个设备环境DC(Devicecontext),在GDI+中可以将特定笔和刷子传递给任何一个画图命令,而且笔和刷子也不再像以前那样总是绑定在一起,现在可以通过不同函数分开使用它们。令人值得关注的是在GDI+中,VC++.NET提供了一组支持DHTML编辑的类以及DHTML对话窗体类(CDHtmlDialog、CMultiPageDHtmlDialog),这些丰富的控件和函数使得高效开发Web应用成为可能。
    Web服务及应用在Web服务、Web应用和多层应用方面,VC++.NET也在MFC7.0中提供了一系列的类来建立Web服务、高效率生成HTML代码、支持轻量级的HTTP客户端、支持SMTP和MIME编码的消息、支持发送接收电子邮件等等。微软的.NET平台主要是针对网络,.NET的精髓就在于通过基于XML的SOAP远程过程调用并通过UDDI/WDSL自动发现网络服务器,来实现整个分布式网络应用系统。而VC++.NET在这一点上与其他.NET开发工具毫不逊色,相反可以利用的手段更多。
      

  13.   

    没用过.net,比VC6好很多吗?
      

  14.   

    偶感兴趣的倒是那个CHtmlDialog。呵呵!
      

  15.   

    另外,对各种图像格式也有了直接支持。比如,有了CImage类,可以直接根据文件名Load。
      

  16.   

    CImage是ATL的。
    .net的开发环境方便多了。
    MFC中很多语法很符合C++标准了,比如类型转换就替换掉了C的用法
    CHtmlDialog是个全新的东西,方便MFC在Web上的开发。
      

  17.   

    2003我没用过,但是2002所谓的.NET我到用过。感觉很不爽,不用.NET开发的原因如下:
    1、对98的支持很差,编译后的程序只能在2000以上机器上运行,否则.....
    2、速度巨慢,P41.7G,256M的内存下运行,启动就要花30秒,编译程序更是消耗时光。足足较6.0慢100倍!!!
    3、MFC变得更加臃肿庞大,根本不贴合实际。新增加的功能根本就不实用。如果用它开发ActiveX,那更是一场恶梦!!!
    4、资源的BUG让人无法忍受,我们你们也不希望ID_FILE_NEW变成 53345 吧???还有很多......
    所以我不用,.NET技术现在很不成熟
      

  18.   

    7.0比6。0在Activex方面要方便多了,不知楼上为什么说不方便?===================================================
    Digit Pro space  欢迎您
    http://www.dpspace.com
    有什么问题到论坛上发表,我将尽我全力为您解决
    论坛欢迎高手注册加入,让我们共同进步
      

  19.   

    刚知,原来只要将VC.NET 2003中的对话框字体设为“新宋体”或“宋体”就没事了。这样VC.NET 2003还是有用了。