欢迎来到天天文库
浏览记录
ID:5501548
大小:606.50 KB
页数:30页
时间:2017-11-12
《60应用程序升级到visual》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、DEV320:将VisualBasic6.0应用程序升级到VisualBasic.NET张炜weizha@microsoft.comDeveloperEvangelistMicrosoftChina日程为什么升级?为升级做好准备大问题和小问题VisualBasic.NET不仅仅是VisualBasic6+1基于一个全新的平台--.NET更好的Windows®,COM+应用一流的.NET语言与VisualBasic6.0并不是100%兼容升级向导转换95%另外5%需要您的努力打开一个新世界!更加强大!更
2、好的开发体验实现了OO设计更强壮的类型检查任务列表后台编译跨语言编写更好的Windows程序控件锚定(anchoring)容易部署编写web应用的最快方式扩展现有的应用Web应用和XMLWeb服务的RAD开发VB程序员的英明选择只有VB才具有的语言特性:可读性非常高的语言大小写不敏感可选的参数支持晚绑定某些类型之间自动转换大家熟悉的BASIC函数(Left$,OnErrorGoTo…)VB才有的RAD体验:自动格式化编写代码时,后台自动编译可升级现有的应用升级演练demo多层应用的升级项目组增值—支持W
3、eb升级概述在VisualBasic.NET中打开项目运行升级向导项目没法编译运行为什么?UpgradeVB6Project???升级向导FormLayoutActiveXControlsADODataBindingCodeSyntaxChangesCOMLibrariesRESfilesBehaviorwarnings升级概述为VisualBasic6.0应用升级做准备检查msdn.microsoft.com/library/techart/vb6tovbdotnet.htm解决问题小问题大问题添加新
4、功能升级后的项目添加功能解决问题VisualBasic.NET升级VisualBasic6.0为升级做准备部分升级在VB.NET中编写新的客户/组件省及部分代码到VB.NET使用COMinterop完全升级取决于你!准备升级学习原理为VB6.0应用升级做准备从小的和简单的开始方法重复进行在VB.NET中重新构造增值,添加新功能小问题VariantsActiveFormStronglytypeResolvedefaultpropertiesAppobjectUse.NETclassesUser-def
5、inedtypeInitializationcodeMarshalingattributesAPIsReplace‘AsAny’withtypeAddressOfwithDelegateNon-zeroarraysZero-basedarrays,orSystem.ArrayLSetCustommethod小问题demo晚绑定变量Variant升级到ObjectVariantsVB6中的缺省类型VB.NET中没有缺省属性没有IsMissing,IsEmptyVariant和ObjectIsObject有
6、新的方式代码规范的变量VisualBasic6.0代码升级后结果:完全正常工作DimmyTextBoxAsTextBoxmyTextBox="HeyThere"DimmyTextBoxAsSystem.Windows.Forms.TextBoxmyTextBox.Text="HeyThere"VisualBasic6.0代码升级后结果:运行时错误DimmyTextBoxmyTextBox="HeyThere"DimmyTextBoxAsObject'UPGRADE_WARNING:Couldn'tres
7、olvedefaultpropertyofobjectmyTextBox.myTextBox="HeyThere"代码不规范的变量解决办法的选择解决办法1:在VisualBasic6.0中准备解决办法2:升级后修改DimmyTextBoxmyTextBox="HeyThere"DimmyTextBoxAsObject'UPGRADE_WARNING:Couldn'tresolvedefaultpropertyofobjectmyTextBox.myTextBox.Text="HeyThere"AsTex
8、tBox.TextByRef属性GetCustIdtakesByRefparam如果传递Text1.Text结果:InVB6,Text1.Text=“Mike”InVB.NET,Text1.Text=“Mike.NET”PrivatePropertyGetCustId(CustNameAsString)AsStringCustName=CustName&“.NET”CustId=CustNameEndPropertyText1.Text=“
此文档下载收益归作者所有