• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

VC.net的一个bug?

发布: 2007-7-01 20:40 | 作者: admin | 来源: | 查看: 55次 | 进入软件测试论坛讨论

领测软件测试网

相信各位朋友一定开发过可以显示对话框的常规MFC DLL,例如显示一个登陆对话框并进行口令校验。我在VC6下面做时,一点问题都没有。可是转到VC.net中文版之后,麻烦却来了。下面的操作,大家可以试试(一定要用中文版,英文版我不知道是否也会出错)

    1、用VC.net新建一个常规MFC DLL项目;
    2、在资源编辑器中,插入一个对话框资源;
    3、编译此项目,系统会提示:
       “DlgDLL.rc (158): error RC2135 : file not found: 936”

    问题出在哪里呢?我用任务列表窗口查看,有以下信息:“e:\Study\DlgDLL\DlgDLL.rc(158): error RC2135 : file not found: 936”,原来是刚加入的对话框使编译失败。这是怎么回事呢?经过和VC6生成的相似工程的比较,我终于找到了解决办法,步骤很简单:
   
    1、在VC.net的“解决方案资源管理器”窗口中,用鼠标右击工程的rc文件,本例中是DlgDLL.rc,在弹出菜单中选择“打开方式”,然后在出现的对话框中选择“源代码(文本)编辑器”,随后单击“打开”按钮;
    2、定位到文本形式的rc文件的最后几行,你回看到类似于下面的代码:
       #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_CHS)
       语言 4、2
       #pragma code_page(936)
       #include "res\DlgDLL.rc2"  // 非 Microsoft Visual C++ 编辑资源
       #include "afxres.rc"     // 标准组件
       #endif
    3、将这段代码中的“语言 4、2”改为“LANGUAGE 4,2”;
    4、保存并重新编译,一切OK!
 
    不知在英文版下是否也有同样的bug,微软也真不够意思! :-)


延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网