将 Visual Basic 6.0 应用程序升级到 Visual Basic .NET 和 Visual Basic 2005
转自:msdn
patterns & practices Developer Center
摘要
本页概要介绍了《从 Visual Basic 6.0 升级到 Visual Basic .NET 和 Visual Basic 2005》指南。该指南由 Microsoft 模式和实施方案小组、ArtinSoft(一家在 Visual Basic 升级方面具有丰富经验的公司)以及 Visual Basic Upgrade Wizard 和 Visual Basic Upgrade Wizard Companion 的开发人员联合编写。该指南为正在考虑将其基于 Visual Basic 6.0 的应用程序和组件升级到 Visual Basic .NET 的单位提供了宝贵的信息。它还提供了已得到证实的实施方案,使您可以达到事半功倍的效果,并且提供了对应用程序在 NET Framework 上运行后进行一般性改进的指导。(本文包含一些指向英文站点的链接)
除了指南本身,还提供了一种新工具 Basic 6.0 Upgrade Assessment Tool,以帮助识别常见的升级问题以及估算升级 Visual Basic 6.0 代码所需的成本和人力。
下载
•
Upgrading Visual Basic 6.0 to Visual Basic .NET and Visual Basic 2005 guide
•
•
FMStocks Sample Application Before Upgrade
•
FMStocks Sample Application Post Upgrade
社区
http://practices.gotdotnet.com/projects/vb62vbnet
许可证
End User Licensing Agreement (EULA)
本页内容
概述
许多公司都曾经投入了时间和资金来开发基于 Visual Basic 6.0 语言和相关技术的应用程序。无论 Visual Basic .NET 是何种版本,使这些应用程序适应该语言的新版本总是存在一些困难。虽然通过网站可以获得进行这种升级的信息,但是仍缺乏涵盖升级的所有方面的全面指导。
该指南的目的就是提供这种全面指导。该指南介绍了整个升级过程,包括从最初的评估和规划阶段到实际开发升级过程中出现的问题的解决方案,再到对升级后的应用程序的测试。还介绍了让您能够事半功倍的最佳实施方案。基于 ArtinSoft 对 Visual Basic 6.0 升级项目的丰富经验,本指南中所提供的实施方案、过程和程序已被证实有效。还提供了一些建议,用于在达到同等效果后,使用 Visual Basic .NET 中可用的新技术改进升级的应用程序。
除了指南本身,还介绍了一种新开发的工具 Visual Basic 6.0 Upgrade Assessment Tool,它用于生成报告,升级小组可以使用这些报告估算对具体的应用程序、组件或项目进行升级的成本和人力。该工具分析 Visual Basic 6.0 源代码,以识别需要专门处理的问题。对于每个问题,该工具都对处理该问题所需的时间和开发人员技巧进行了估算。这些估算和建议都是根据 ArtinSoft 在将 Visual Basic 6.0 组件和应用程序升级到 Visual Basic .NET 方面的丰富经验得出的。该工具分析代码之后,会以 Microsoft Excel 工作表的形式生成报告,对代码的分析结构进行详细描述。提供的信息包括源代码度量信息(例如,窗体数、模块数和每个文件的代码行数)、需要处理的升级问题的数量和类别以及建议的升级顺序。还包括对进行升级所需的人力和成本的估算(按任务划分和合计)以及对进行升级所需的开发人员资源的建议。这些估算可以进行配置,从而使您可以调整这些估算以反映公司中可用的资源和经验级别。该指南还提供了有关使用评估工具以及解释和修改报告的详细信息。
优点
该指南是根据在各种基于 Visual Basic 6.0 的应用程序上执行升级项目的丰富经验得出的。执行这些升级的过程中所获取的知识帮助开发了最佳实施方案,进行升级的所有用户都可以应用这些方案,我们以指南的形式将它们浓缩其中。对读者来说,优点就是所提供的实施方案、过程和程序已在许多领域的许多项目中得到全面测试,并且已证实有效。
另一个好处是随本指南一同开发的评估工具。评估工具可以分析现有的 Visual Basic 6.0 代码以评估将应用程序升级到 Visual Basic .NET 所必须投入的人工劳动量。它可以识别代码中的升级问题,并可以根据处理该问题所需的人力来评估每个问题的严重性。好处是确定升级项目的可行性以及成本和人力估算方面的大量工作可以自动进行。
对用户的要求
本指南针对技术决策者、解决方案设计者和软件开发人员而设计。要使用本指南进行升级,您应该了解以下技术:
•
Microsoft Visual Basic 6.0
•
Microsoft Visual Basic .NET
•
Microsoft .NET Framework 1.1 和 .NET Framework 2.0
指南的概念和特色
本指南覆盖了升级过程的几个方面,包括:
•
一般性升级策略。
•
初始评估。
•
规划和准备。
•
自动升级程序。
•
升级问题。
•
手动升级过程。
•
应用程序改进。
•
测试升级的应用程序和组件。
本指南一一介绍了这些方面并包括了实际示例用于补充和论证每个论述。
首先,指南对升级进行了全面概述。这包括您为什么可能要考虑升级项目以及各种升级选择方案,以及做出最明智的决策需要搜集的信息。
接下来,指南介绍了升级过程本身的信息。介绍了升级的几个辅助工具,包括 Visual Basic 6.0 Upgrade Assessment Tool 和 Visual Basic Upgrade Wizard。指南对使用这些工具前的应用程序准备过程进行了详细描述,以便能够获得最大的收益。此外,还提供了受支持的 Visual Basic 6.0 语言的功能以及升级向导的限制,从而使您可以了解每个过程或建议后面的“为什么”。
指南然后介绍了自动升级工具完成其工作后未完成的升级过程。由于该工具对可以自动升级的内容存在限制,因此必须进行手动升级才能完成升级。指南指出了需要特别注意的问题类型,并提供了每个问题原因的详细信息和解决方案。每个解决方案都包括代码示例以提供实际证明。讨论的问题包括所有可能的 Visual Basic 6.0 应用程序类型,从基于经典 Windows Forms 的应用程序到基于 Web 的应用程序以及多个常规语言功能,例如数据类型、文件输入/输出、数据库访问和分布式计算技术。
针对由于时间或预算约束而无法实现完整升级的应用程序,指导提供了有关在 Visual Basic 6.0 和 Visual Basic .NET 之间实现互操作性的信息。这使您可以升级项目或应用程序的某些部分,而将其他部分保留在 Visual Basic 6.0 中。通过这些互操作性技术,应用程序中由于成本太高而无法升级的部分可以无限期保留在 Visual Basic 6.0 中,您可以在升级这些部分的资源具备后随时对其进行升级。
将应用程序升级到 Visual Basic .NET 之后,便可以使用这些无法在该语言的早期版本中使用的功能和技术。指南提供了可以对应用程序进行改进的类型的建议,并给出了如何实现这些改进的建议。对于那些由于太多而无法在几个段落中包括的改进,已提供访问其他信息的链接。
测试是升级过程中的至关重要的方面,以确保升级应用程序的可靠性和正确性。指南提供了关于如何对升级的应用程序执行最佳测试的信息。并介绍了可以使用的可能升级策略,标识了最适合每个测试策略的应用程序和升级策略的特征。详细介绍了每个策略的测试过程和程序,这些过程通用于所有测试策略。还列出了一些可用于促进测试的工具。
Visual Basic 6.0 Upgrade Assessment Tool 的概念和特征
所有升级项目的关键任务之一就是对要升级的应用程序进行评估以估算所需的成本和人力。这项任务可能耗费相当长的时间,尤其是对于那些包括许多表单和模块的大项目。如果缺乏升级到 Visual Basic .NET 的经验,这项任务可能会变得更复杂;如果您不具备对发生的问题如何处理的经验,估算所需的人力将比较困难。
为减少评估所需的人力,开发了 Visual Basic 6.0 Upgrade Assessment Tool。该工具的用途是分析 Visual Basic 6.0 项目以确定可以进行升级需要处理的问题。它还提供了关于从何处获取帮助的信息,以了解每个问题和处理这些问题所需的技巧类型。以 Microsoft Excel 工作表的形式生成的报告可以进行配置,因此,可以为不同类别的问题指定估算的成本。这可以通过自动进行大量工作来帮助简化评估过程。
系统需求
要应用提供的指南并使用评估工具,需要满足下列要求:
•
Microsoft Windows 2000、Windows XP Professional 或 Windows Server 2003 操作系统
•
Microsoft Visual Basic 6.0
•
Microsoft .NET Framework 1.1(必需)
•
Microsoft Visual Studio .NET 开发系统(强烈建议,但不是必需)
•
Microsoft Excel 2003(使用 Visual Basic 6.0 Upgrade Assessment Tool 时必需)
快速入门
建议您首先阅读第 1 章“简介”中的“为什么考虑升级项目?”一节。这一节可以帮助确定对于您的项目,升级是否是正确的选择,并提供软件发展的可选方法列表。确定升级是正确的选择之后,应该继续阅读第 2 章“成功升级的实施方案”中的“同等效果和应用程序改进”一节,以对本指南的范围有一个清晰的了解。
社区
该指南的内容(与许多可传递的模式和实施方案相同)与社区站点相关联。在该社区站点上,可以发布问题、提供反馈或与其他用户取得联系以分享思想。社区成员还可以帮助 Microsoft 规划和测试未来的指南内容,并可以下载其他内容,例如扩展和培训资料。
未来规划
该指南和工具覆盖了 Visual Basic 6.0 应用程序到 Visual Basic .NET 2003 和 Visual Basic 2005 的升级。编写该指南时,没有计划创建该指南的任何新版本。
反馈和支持
问题?评论?建议?要提供关于该指南的反馈或获取关于任何问题的帮助,请访问 Visual Basic 6.0 to Visual Basic .NET Migration community site。社区站点上的留言板是首选的反馈和支持渠道,因为留言板使您可以与整个社区成员分享您的思想、问题和解决方案。或者,可以直接发送电子邮件至 Microsoft 模式和实施方案小组(邮箱为:devfdbck@microsoft.com),尽管我们无法答复每一封邮件。
将 Visual Basic 6.0 应用程序升级到 Visual Basic .NET 和 Visual Basic 2005 是指南的一项内容,可以重复使用、自定义和扩展。它不是 Microsoft 产品。详细信息请参见下表。
属性
说明
支持
基于代码的指南“按原样”出版并且无保证。客户可以通过 Microsoft Support Services 付费获得支持,但是 Microsoft 支持员工将代码视为用户编写的。模式和实施方案小组从事产品支持工作并会根据需要增加对客户的援助。欢迎客户通过联机社区相互支持。
功能
该指南为普通企业发展挑战提供了一种灵活且结构合理的解决方案。指导通过使用基础平台功能和附加最佳实施方案来解决挑战。本指南可由用户进行扩展和自定义。
发布
指南发布一般经过 3-6 个月的生命周期。当资产在当前可用的平台上准备就绪时发布。如果有充足的客户需求,将发布现有资产的新版本(可能已被修订以在平台的后期版本上运行)。
兼容性
Microsoft 产品特定版本进行交替时发生的问题。当产品更改时,已发布的指导可能会更改或废弃。如果可能,将在使用未来版本处于开发阶段时即开始编写指导。没有关于与指导的早期版本、平台的过去或未来版本的兼容性的保证。模式和实施方案小组建议使用阶段移植策略,该小组对指导的多版本共存也给与了高优先级。
波形系数
指南以源代码发布。通过配置和定义的扩展点提供了可变性(也可通过直接修改源代码)。文档集中说明了如何使用资产、如何扩展资产和激发设计的目标、示范和平衡。
作者和参与者
《将 Visual Basic 6.0 应用程序升级到 Visual Basic .NET 和 Visual Basic 2005》和 Visual Basic 6.0 Upgrade Assessment Tool 由下列人员开发。
主要作者
该指南的内容和附带的评估工具由 ArtinSoft 的以下人员开发:
•
项目领导:Federico Zoufaly
•
指导:César Muñoz、Paul Dermody、Manfred Dahmen、Ronny Vargas、Hendel Valverde、José David Araya、Oscar Calvo、Allan Cantillo、Alvaro Rivera、Christian Saborío、Juan Fernando Peña、Xavier Morera、Iván Sanabria
•
评估工具的开发:Rolando Méndez
参与者
该指南和评估工具是在下列人员的帮助下开发的:
•
项目经理:William Loeffler (Microsoft Corporation)
•
产品经理:Eugenio Pace (Microsoft Corporation)
•
设计师:Keith Pleas(指导设计)
•
测试:Edward Lafferty (Microsoft Corporation);Ashish Babbar、Terrence Cyril J.、Manish Duggal、Chaitanya Bijwe、Arumugam Subramaniyam、Umashankar Murugesan、Dhanaraj Subbian、Tarin R. Shah、Dipika Khanna、Gayatri Patil 和 Sandesh Pandurang Ambekar (Infosys Technologies Ltd)
•
文档和示例:RoAnn Corbisier (Microsoft Corporation);Tina Burden McGrayne 和 Melissa Seymour (TinaTech Inc.);Sharon Smith (Linda Werner & Associates Inc);Francisco Fernandez 和 Paul Henry (Wadeware LLC)
致谢
非常感谢以下在该指南的开发过程中提供了宝贵援助和反馈的人员:
•
Dan Appleman (Desaware Inc.)
•
Joe Binder (Microsoft Corporation)
•
Rob Copeland (Microsoft Corporation)
•
Jackie Goldstein (Renaissance Computer Systems Ltd.)
•
Ed Hickey (Microsoft Corporation)
•
Billy Hollis
•
Edward Jezierski (Microsoft Corporation)
•
Chris Kinsman (Vergent Software)
•
Deborah Kurata (InStep Technologies)
•
Julia Lerman (The Data Farm)
•
Rockford Lhotka (Magenic Technologies)
•
Christian Nielsen (Volvo Information Technology AB)
•
Jay Roxe (Microsoft Corporation)
•
Roberto Schatz (Microsoft Southcone)
•
Jay Schmelzer (Microsoft Corporation)
•
Arvindra Sehmi (Microsoft EMEA)
•
Scott Swigart (Swigart Consulting)
•
Visual Basic MVP (Microsoft Valued Professionals)
•
Gavin Warrener (Microsoft South Africa)
相关的主题和资源
patterns & practices Developer Center