DetailPage-MSS-KB

知识库

文章编号: 894500 - 最后修改: 2006年2月2日 - 修订: 2.2

 

简介

如果在 Microsoft.net Framework 1.0 或.net Framework 1.1 上构建该应用程序,则可能会遇到在基于 Microsoft Windows 窗体的应用程序中的资源限制问题。当您在 Microsoft Windows 9 x 上运行这些应用程序时,可能会出现这些资源限制问题基于的操作系统。以下是 Windows 9 x 基于的操作系统:
  • Windows 98
  • Windows 98 第二版
  • Windows Millennium 版
开发人员和应用程序设计人员应考虑资源的处理中,您可以在 Windows 9 x 方式差异基于操作系统以及在基于 Windows NT 的操作系统中处理资源的方式。以下是在基于 Windows NT 的操作系统:
  • Windows 4.0 NT
  • Windows 2000
  • Windows XP
  • Windows 2003 Server

更多信息

.NET Framework 1.0 支持 Windows 9 x 基于其限制的操作系统。.NET Framework 1.1 支持基于 Windows NT 的操作系统其限制。然而,在操作系统的限制是不同的。因此,如果您设计并生成基于 Windows NT 的计算机上的基于 Windows 窗体的应用程序,然后部署和运行一个 Windows 9 x 上的应用程序基于计算机,应用程序可能会遇到资源限制问题。

当压力测试这些应用程序时,您可能会收到"错误创建窗口处理"Win32 API 错误消息。基于 Windows NT 的计算机被限制为 10,000 图形设备接口 (GDI) 处理每个进程。Windows 9 x 基于计算机被限制为仅 1,200 GDI 整个系统的句柄。某些 Windows 版本中,限制是 640 的 GDI 句柄和所有应用程序必须共享这些 GDI 句柄。例如对于日语版的 Windows Millennium 版的 640 GDI 句柄的限制。非托管 C 语言为基础的应用程序可能还会出现此问题。

若要最大限度地减少资源限制的效果,请使用一个或多个以下方法:
  • 请确保您创建仅图形将会呈现的控件。分配资源以隐藏的控件或控件的数组时,都可以应用程序使用较少的资源。
  • 当您使用图形对象 (如笔和画笔,分配 GDI 控点时,一定要小心。.NET Framework 1.0 和.net Framework 1.1 不总是释放其资源直到调用 Dispose 方法。
  • 强制垃圾回收前新的 GDI 对象分配。若要强制垃圾回收,请为您不需要的对象调用 Dispose 方法。稍后,您可以调用 GC.Collect 方法和 GC.WaitForPendingFinalizers 方法来强制这些对象的清理和释放这些对象。我们不建议使用此方法对于基于 Windows NT 的系统。但是,您可能要使用此方法来变通解决 Windows 9 x 的资源限制基于的操作系统。

这篇文章中的信息适用于:
  • Microsoft Visual Studio 2005 Standard Edition
  • Microsoft Visual Studio 2005 Professional
  • Microsoft Visual Studio .NET 2003 Enterprise Architect
  • Microsoft Visual Studio .NET 2003 Enterprise Developer
  • Microsoft Visual Studio .NET 2003 Academic Edition
  • Microsoft Visual Studio .NET 2002 专业版
  • Microsoft Visual Studio .NET 2002 企业级结构设计版
  • Microsoft Visual Studio .NET 2002 企业级开发版
  • Microsoft Visual Studio .NET 2002 Academic Edition
关键字: 
kbmt kbvs2005swept kbvs2005applies kbwindowsforms kbinfo KB894500 KbMtzh
机器翻译机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版: 894500  (http://support.microsoft.com/kb/894500/en-us/ )
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。
其他支持选项
Microsoft Community 支持论坛
直接联系我们
查找 Microsoft 认证合作伙伴
Microsoft 商店