• <menuitem id="ysr28"><object id="ysr28"></object></menuitem>
    <div id="ysr28"></div><div id="ysr28"><s id="ysr28"></s></div>
    <dl id="ysr28"><menu id="ysr28"></menu></dl>
    <tbody id="ysr28"></tbody>
  • <sup id="ysr28"><menu id="ysr28"></menu></sup>
  • <dl id="ysr28"></dl>
    <dl id="ysr28"><menu id="ysr28"></menu></dl>
    首页 | 社区 | 博客 | 招聘 | 文章 | 新闻 | 下载 | 读书 | 代码
    亲,您未登录哦! 登录 | 注册

    老生常谈:从VB6迁移到VB.net

    打印文章

    分享到:
    Visual Basic相信是很多程序员接触的第一个开发环?#24120;?#24403;然多年后想迁移到Visual Basic.NET还是需要一定的处理工作的。本文将为大家介绍迁移的过程。

      在工作中,可能会碰到需要将VB编写的代码迁移到 VB.NET的情况,有好多细节需要处理。好在互联网发展了这么多年,好多问题在互联网上都?#20889;?#26696;,所以需要的时候搜索一下就能解决。

      本人也碰到了从VB迁移到VB.NET的情况,现将碰到的问题及其解决方法或替代方法做一个总结,方便后来人。

      首先,建议看一下这篇英文文章《Converting VB6 to VB.NET》http://dotnet.sys-con.com/node/46335,&#35762;&#36848;&#20102;&#19968;&#33324;&#30340;&#36801;&#31227;&#27493;&#39588;。<br><br>  &#20854;&#27425;,&#19979;&#36733;&nbsp;Microsoft&nbsp;Visual&nbsp;Basic&nbsp;Power&nbsp;Packs&nbsp;&#24182;&#23433;&#35013;,&#36825;&#26679;&#22312;&#20351;&#29992;&#21521;&#23548;&#23558;VB6&#30340;&#20195;&#30721;&#36801;&#31227;&#21040;VB.NET&#20043;&#21518;,&#33021;“&#28040;&#28781;”&#19981;&#23569;&#32534;&#35793;&#38169;&#35823;。<br><br>  VB&nbsp;Power&nbsp;Packs&nbsp;2.0&nbsp;&#23545;&#24212;VS2005,&#26412;&#20154;&#27809;&#26377;&#25214;&#21040;&#19979;&#36733;&#22320;&#22336;。<br><br>  VB&nbsp;Power&nbsp;Packs&nbsp;3.0&nbsp;&#23545;&#24212;VS2008,&#19979;&#36733;&#22320;&#22336;:http://download.microsoft.com/download/1/2/A&nbsp;/12AA9B28-4F67-42C3-9319-684E8AD6F0AE/VisualBasicPowerPacks3Setup.exe<br><br>  &#25454;&#35828;VB&nbsp;Power&nbsp;Packs&nbsp;10.0&nbsp;&#24050;&#32463;&#21457;&#24067;&#20102;,&#24863;&#20852;&#36259;&#30340;&#35835;&#32773;&#35831;&#33258;&#34892;&#25628;&#32034;。<br><br>  &#20043;&#21518;&#23601;&#26159;&#21508;&#31181;&#29712;&#30862;&#30340;&#38382;&#39064;,&#21482;&#33021;&#30896;&#21040;&#19968;&#20010;,&#35299;&#20915;&#19968;&#20010;。<br><br>  &#38382;&#39064;:NewIndex&nbsp;&#19981;&#26159;“System.Windows.Forms.ListBox”&#30340;&#25104;&#21592;<br><br>  &#26041;&#27861;&#19968;:<br><br>  &nbsp;<br>Dim&nbsp;x&nbsp;As&nbsp;Integer&nbsp;x&nbsp;=&nbsp;ListBox.Items.Add(rsDates.Fields(&quot;fd&quot;).Value)&nbsp;ListBox.SelectedIndex&nbsp;=&nbsp;x<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#26041;&#27861;&#20108;:<br>ListBox.Items.Add(rsDates.Fields(&quot;fd&quot;).Value)&nbsp;ListBox.SelectedIndex=ListBox.Items.Count-1<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#38382;&#39064;:If&nbsp;App.PrevInstance&nbsp;Then&nbsp;&#39;&nbsp;&#31243;&#24207;&#24050;&#32463;&#36816;&#34892;<br><br>  &#26041;&#27861;<br> If&nbsp;Process.GetProcessesByName(Process.GetCurrentProcess.ProcessName).Length&nbsp;&gt;&nbsp;1&nbsp;Then&nbsp;&#38382;&#39064;:Unload()<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#26041;&#27861;:&#20174;&#29702;&#35770;&#19978;&#26469;&#35762;,VB.NET&#26377;&#22403;&#22334;&#25910;&#38598;&#26426;&#21046;,&#25152;&#20197;&#19981;&#29992;&#20027;&#21160;&#30340;&#27880;&#38144;&#23545;&#35937;,&#30452;&#25509;&#27880;&#37322;&#25481;&#23601;&#34892;(&#27809;&#26377;&#32463;&#36807;?#32454;?#39564;&#35777;)<br><br>  &#38382;&#39064;:&#38656;&#35201;&#23545;&#31243;&#24207;&#38598;“mscomctl,&nbsp;Version=10.0.4504.0,&nbsp;Culture=neutral,&nbsp;PublicKeyToken……<br><br>  &#21407;&#22240;:&#24341;&#29992;&#20102;&nbsp;office&#25511;&#20214;<br><br>  &#26041;&#27861;:&#23433;&#35013;VS&#30340;“visual&nbsp;studio&nbsp;tools&nbsp;for&nbsp;Office”,&#23433;&#35013;Office200*&#30340;“.net&#21487;&#32534;&#31243;&#25903;&#25345;”<br><br>  &#26356;&#35814;&#32454;&#30340;&#36164;&#26009;:http://saber5d.blog.163.com/blog/static/12799877820098164556798/<br><br>  &#38382;&#39064;:PictureBox.cls()<br><br>  &#26041;&#27861;:PictureBox.Refresh()<br><br>  &#38382;&#39064;:DateTime.dateDiff()<br><br>  &#26041;&#27861;:DateAndTime.DateDiff()<br><br>  &#38382;&#39064;:&#22312;&#29366;&#24577;&#26639;&#21160;&#24577;&#28155;&#21152;panel<br>Dim&nbsp;x&nbsp;As&nbsp;Integer&nbsp;x&nbsp;=&nbsp;StatusBar.Panels.Count&nbsp;StatusBar.Panels.Add&nbsp;x,&nbsp;string1,&nbsp;string2&nbsp;StatusBar.Panels.Add&nbsp;x&nbsp;+&nbsp;1,&nbsp;string1,&nbsp;string2<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#21319;&#32423;&#21521;&#23548;&#23558;&#20195;&#30721;&#21464;&#20026;:<br><br>    &#26041;&#27861;&#19968;:<br>StatusBar.Items.Add(New&nbsp;System.Windows.Forms.ToolStripStatusLabel(Integer,&nbsp;string1,&nbsp;string2))&nbsp;&#26041;&#27861;:&#25163;&#24037;&#20462;&#25913;&#20026;<br><br>  StatusBar.Items.Add(New&nbsp;System.Windows.Forms.ToolStripStatusLabel(string))&nbsp;StatusBar.Items.Item(StatusBar.Items.Count&nbsp;-&nbsp;1).Text&nbsp;=&nbsp;string&nbsp;&#38382;&#39064;:“PaintPicture”&#19981;&#26159;“System.Windows.Forms.PictureBox”&#30340;&#25104;&#21592;。<br><br> Dim&nbsp;g&nbsp;As&nbsp;Graphics&nbsp;=&nbsp;Picture1.CreateGraphics()&nbsp;g.DrawImage(pic,&nbsp;x,&nbsp;y)<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#36825;&#31181;&#26041;&#27861;,?#30475;蜳ictureBox&#37325;&#32472;&#30340;&#26102;&#20505;,&#22270;&#29255;&#20250;&#28040;&#22833;<br><br>  &#26041;&#27861;&#20108;:<br>Private&nbsp;blankBitmap&nbsp;As&nbsp;Bitmap&nbsp;blankBitmap&nbsp;=&nbsp;New&nbsp;Bitmap(70&nbsp;*&nbsp;12,&nbsp;maxRow&nbsp;*&nbsp;12)&nbsp;Picture1.Image&nbsp;=&nbsp;blankBitmap&nbsp;Dim&nbsp;g&nbsp;As&nbsp;Graphics&nbsp;g&nbsp;=&nbsp;Graphics.FromImage(Picture1.Image)&nbsp;g.DrawImage(pic,&nbsp;x,&nbsp;y)<br><br>&#36825;&#31181;&#26041;&#27861;,?#30475;蜳ictureBox&#37325;&#32472;&#30340;&#26102;&#20505;,&#22270;&#29255;&#19981;&#20250;&#28040;&#22833;<br><br>  &#38382;&#39064;:LenB()<br><br>  &#26041;&#27861;&#19968;:<br>Public&nbsp;Function&nbsp;LenB(ByVal&nbsp;oString&nbsp;As&nbsp;String)&nbsp;As&nbsp;Integer&nbsp;Dim&nbsp;strArray()&nbsp;As&nbsp;Byte&nbsp;Dim&nbsp;Strlen&nbsp;As&nbsp;Integer&nbsp;Dim&nbsp;MyEncoder&nbsp;As&nbsp;System.Text.Encoding&nbsp;=&nbsp;System.Text.Encoding.Default&nbsp;strArray&nbsp;=&nbsp;MyEncoder.GetBytes(oString)&nbsp;Strlen&nbsp;=&nbsp;strArray.Length&nbsp;Return&nbsp;Strlen&nbsp;End&nbsp;Function<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#26041;&#27861;&#20108;:<br>System.Text.Encoding.GetEncoding(&quot;GB2312&quot;).GetByteCount(strMsg)<br><br>  &#38382;&#39064;:VB6.LoadResPicture(&quot;pictureName&quot;,&nbsp;VB6.LoadResConstants.ResBitmap)<br><br>  &#26041;&#27861;:Me.BackgroundImage&nbsp;=&nbsp;My.Resources.bmpBCSSTART<br><br>  &#38382;&#39064;:on&nbsp;error&nbsp;***<br><br>  &#24314;&#35758;:&#23613;&#37327;&#26367;&#25442;&#25104;try&nbsp;catch<br><br>  &#38382;&#39064;:&#32972;&#26223;&#33394;<br><br>  &#22914;&#26524;&#26576;&#20010;&#25353;&#38062;&#35774;&#32622;&#20102;&#32972;&#26223;&#33394;,&#23588;&#20854;&#26159;&#22312;&nbsp;enter&#25110;leave?#24405;?#20013;&#35774;&#32622;&#32972;&#26223;&#33394;,&#20174;VB6&#36716;&#21040;VB.NET&#20043;&#21518;,&#21407;&#26469;&#27809;&#26377;&#35774;&#32622;&#32972;&#26223;&#33394;&#30340;&#25353;&#38062;,&#20063;&#20250;&#33258;&#21160;&#28155;&#21152;&#32972;&#26223;&#33394;<br><br>  &#26041;&#27861;:&#25163;&#21160;&#25628;&#32034;&#20195;&#30721;,&#20851;&#38190;&#23383;“backgroundColor”,&#28982;&#21518;&#19968;&#19968;&#20462;&#25913;<br><br>  &#38382;&#39064;:&#21516;&#26679;&#30340;&#23383;&#20307;&#21644;&#23383;&#21495;,&#22312;VB6&#21644;VB.NET&#30340;&#30028;&#38754;&#19978;&#21344;?#30446;&#21344;?#22823;&#23567;&#26377;&#32454;&#24494;&#24046;&#21035;<br><br>  &#26041;&#27861;:&#25226;&#25152;&#26377;&#30028;&#38754;&#37117;&#26816;&#26597;&#19968;&#36941;<br><br>  &#38382;&#39064;:TAB&#39029;&#20351;&#29992;&#20102;ActiveX&#25511;&#20214;xxx<br><br>  &#35299;&#20915;:&#26367;&#25442;&#25104;.net&#20013;&#30340;TAB&#39029;<br><br>  &#38382;&#39064;:Base64&#32534;&#30721;&#19982;&#35299;&#30721;<br><br>  &#26041;&#27861;:<br><br>  &#32534;&#30721;<br>Dim&nbsp;x&nbsp;As&nbsp;Byte()&nbsp;x&nbsp;=&nbsp;System.Text.Encoding.ASCII.GetBytes(s)&nbsp;Encrypt&nbsp;=&nbsp;Convert.ToBase64String(x)&nbsp;&#35299;&#30721;<br><br>  Dim&nbsp;x&nbsp;As&nbsp;Byte()&nbsp;x&nbsp;=&nbsp;Convert.FromBase64String(s)&nbsp;Decrypt&nbsp;=&nbsp;System.Text.Encoding.ASCII.GetString(x)<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#38382;&#39064;:&#26576;&#20010;&#23545;&#35805;&#26694;&#26694;&#19968;&#38378;&#32780;&#36807;<br><br>  &#26041;&#27861;:&#23558;Form_Activated&#20013;&#30340;&#20195;&#30721;&#36716;&#31227;&#21040;Form_load&#20013;,&#23558;&nbsp;Form_Activated&#27880;&#37322;&#25481;<br><br>  &#38382;&#39064;:&#23558;ICO&#36716;&#20026;bmp<br>VB6.ImageToIPictureDisp(VB6.LoadResPicture(&quot;ico&quot;,&nbsp;1))<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#26041;&#27861;:My.Resources.ico***.ToBitmap()<br><br>  &#38382;&#39064;:&#31383;&#20307;&#23621;&#20013;<br><br>  &#26041;&#27861;:&#35774;&#32622;&#31383;&#20307;&#30340;&#23646;&#24615;&#21363;&#21487;<br><br>  &#38382;&#39064;:&#35775;&#38382;&#25968;&#25454;&#24211;&#26102;,IsNull()<br><br>  &#26041;&#27861;:isDBNull()<br><br>  &#38382;&#39064;:&nbsp;data&nbsp;report<br><br>  &#26041;&#27861;:&nbsp;&#26367;&#25442;&#25104;crystal&nbsp;report、RDLC&#21450;&#20854;&#20182;&#25253;&#34920;&#25511;&#20214;,&#38656;&#35201;&#37325;&#20889;&#20195;&#30721;<br><br>  &#38142;&#25509;:http://www.cnblogs.com/ols/archive/2010/03/23/1692297.html

    本栏文章均来自于互联网,版权归原作者和各发布网站所有,本站收集这些文章仅供学?#23433;?#32771;之用。任何人都不能将这些文章用于商业或者其他目的。( Pfan.cn )

    编程爱好者论坛

    本栏最新文章

    双色球红球杀号方法
  • <menuitem id="ysr28"><object id="ysr28"></object></menuitem>
    <div id="ysr28"></div><div id="ysr28"><s id="ysr28"></s></div>
    <dl id="ysr28"><menu id="ysr28"></menu></dl>
    <tbody id="ysr28"></tbody>
  • <sup id="ysr28"><menu id="ysr28"></menu></sup>
  • <dl id="ysr28"></dl>
    <dl id="ysr28"><menu id="ysr28"></menu></dl>
  • <menuitem id="ysr28"><object id="ysr28"></object></menuitem>
    <div id="ysr28"></div><div id="ysr28"><s id="ysr28"></s></div>
    <dl id="ysr28"><menu id="ysr28"></menu></dl>
    <tbody id="ysr28"></tbody>
  • <sup id="ysr28"><menu id="ysr28"></menu></sup>
  • <dl id="ysr28"></dl>
    <dl id="ysr28"><menu id="ysr28"></menu></dl>