错误: 无法显示游标时链接到 MFC BLOCKS32 示例

文章翻译 文章翻译
文章编号: 208856 - 查看本文应用于的产品
本文已归档。它按“原样”提供,并且不再更新。
展开全部 | 关闭全部

本文内容

症状

通常,移动鼠标 pointerover 矩形或椭圆 BLOCKS32 示例中插入的时, 根据鼠标的位置就会出现一个不同的鼠标光标。

但是,您编译 BLOCKS32 示例使用 在静态库中使用 MFC 选项,如果不同的游标不会出现一个矩形或椭圆上移动鼠标指针时。

原因

当应用程序通过使用静态库链接到 MFC 时,MFC 资源都将被编译到应用程序的可执行文件中。应用程序的可执行文件将包括 Afxres.rc 文件。若要检查此,单击在 视图 菜单上的 资源包括。Afxres.rc 文件具有 CRectTracker 使用 MFC 源代码中的资源。

这些资源是只包含未 _AFX_NO_TRACKER_RESOURCES 时定义。BLOCKS32 项目有 _AFX_NO_TRACKER_RESOURCES 定义。因此,它不会在应用程序的可执行图像中放置 CRectTracker 要求的资源。因此,都不使用的 CRectTracker 游标将显示在生成该示例使用 MFC 静态时。

解决方案

  1. 视图 菜单上单击 资源包括
  2. 删除以下行:
       #define _AFX_NO_TRACKER_RESOURCES 
    				

状态

Microsoft 已经确认这是在 Microsoft 中的错误在本文开头列出的产品。

更多信息

重现行为的步骤

  1. 从该的 MSDN Microsoft 开发人员提取 Blocks32.exe 示例网络。
  2. 项目 菜单上单击 设置
  3. 更改要 使用在静态库中的 MFC使用 MFC 在共享 DLL 中
  4. 生成,然后运行该应用程序。
  5. 新建 菜单中单击 矩形
  6. 请注意当您将鼠标指针移到矩形时,将光标消失。
查看 Afxres.rc 文件为文本文件,您将看到 CRectTracker 资源只包含未 _AFX_NO_TRACKER_RESOURCES 时定义的。

属性

文章编号: 208856 - 最后修改: 2014年2月22日 - 修订: 2.0
这篇文章中的信息适用于:
  • Microsoft Visual C++ 5.0 企业版
  • Microsoft Visual C++ 6.0 企业版
  • Microsoft Visual C++ 5.0 专业版
  • Microsoft Visual C++ 6.0 专业版
  • Microsoft Visual C++, 32-bit Learning Edition 6.0
关键字:?
kbnosurvey kbarchive kbmt kbbug kbcontainer kbcursor kbnofix KB208856 KbMtzh
机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版: 208856
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com