Experience of converting VB6 applications to Visual Basic.net

C

Chris Asaipillai

Hi there

My compay has a number of Visual Basic 6 applications which are front endeed onto
either SQL Server or Microsoft Access databases.

Now we are in process of planning to re-write these applications into Visual Basic.Net.

My managers main thought is that Visual Basic 6 is (or has!) stopped being supported
by Microsoft.

He needs to present a case to the managers for it

I have 2 questions for you

1) What are the main perceived benefits of Visual Basic.net over Visual Basic 6?
when you have re-written legacy applications?

2) What were the good and bad experiences you had in this process?

We need to present as case to the board of how the company will benefit from
a migration from vb6 to vb.net

Many thanks

Chris
 
B

Brian Schwartz

As one opinion column I read some time back said, the effort to convert from
VB6 to .NET is going to be worthwhile, but just barely--initially. But in
the long run, it will pay off big time. This has been backed up by my own
experience. There are a lot of important differences between VB6 and VB.NET
and the conversion will be hard work. But the possibilities it will open up
to you for the future are fantastic. So that would be my answer to your
first question. For your second question: my worst experience was in
converting painting code, not because it was hard, but because it was so
disappointingly slow. GDI+ does not benefit from the hardware acceleration
that has grown up around GDI. That may (hopefully) change as time goes by,
but we'll see. There are also some weirdnesses with font/text rendering with
GDI+. Other than painting (and some API manipulations you're unlikely to be
using), I found feature after feature that was better and easier in .NET.
Overall my conversion experience was a very positive one--not to say it
wasn't hard work, because it's so very different--but it was exciting. As
for the specifics of how you'll benefit, it's going to depend on exactly
what your software does, and what it might need to do in the future.

I believe Microsoft is planning to stop official support of VB6 next year
(not certain of that), although I'd be surprised if you can't still get
unofficial help in the visual basic classic newsgroups
(microsoft.public.vb.*) for a long time after that, as there is still a
strongly devoted group of people sticking with it.

Incidentally--though it depends on your group and your management--I'd
recommend jumping straight to C# if possible. Maybe that's just a personal
preference. There are lots of similarities between the two, both being based
on .NET, but I find C# easier to read and write--it's more concise and
elegant, and it's a better foundation from which to branch off into other
languages should your team ever need to do so. Again, it depends on your
team's readiness for that extra bit of learning curve, and what you can get
by your management. But the differences between VB6 and VB.NET are greater
than the differences between VB.NET and C#.NET.

--
Brian Schwartz
FishNet Components
http://www.fishnetcomponents.com
Fish Grid .NET Light: Powerful Layouts for Small Datasets


Hi there

My compay has a number of Visual Basic 6 applications which are front endeed
onto
either SQL Server or Microsoft Access databases.

Now we are in process of planning to re-write these applications into Visual
Basic.Net.

My managers main thought is that Visual Basic 6 is (or has!) stopped being
supported
by Microsoft.

He needs to present a case to the managers for it

I have 2 questions for you

1) What are the main perceived benefits of Visual Basic.net over Visual
Basic 6?
when you have re-written legacy applications?

2) What were the good and bad experiences you had in this process?

We need to present as case to the board of how the company will benefit from
a migration from vb6 to vb.net

Many thanks

Chris
 
S

sloan

The good part about going from vb to vb.net is that you can use alot of the same syntax.
The bad part about going from vb to vb.net is that you can use alot of the same syntax.

My opinion ( << only 1 of many >> ) is that you can bring bad vb6 habits with you.
First off, if you go vb.net, make sure you go to project properties and select "Option Explicit ON" and "Option Strict On".

MS was caught, because it was trying to give vb6'ers (me included) a break when going to .Net.
But that was in conflict with having code that the compiler will give you warnings with.

Second. ADO is not ADO.NET. DO NOT RELY ON CONVERSION WIZARDS. If you see the word "ADODB" (as in ADODB.Recordset) in your .Net code, you're way off.

5 years ago you could have argued it wasn't a good thing.
Now, I think its not much of an argument.
You need to go to .Net.

Try calling MS and asking for help with a VB4 (16 bit) issue.

MS forces advancement, you just gotta play their game.

Most people could write pages and pages. Me too. But tha'ts what I got off the top of my head.



Hi there

My compay has a number of Visual Basic 6 applications which are front endeed onto
either SQL Server or Microsoft Access databases.

Now we are in process of planning to re-write these applications into Visual Basic.Net.

My managers main thought is that Visual Basic 6 is (or has!) stopped being supported
by Microsoft.

He needs to present a case to the managers for it

I have 2 questions for you

1) What are the main perceived benefits of Visual Basic.net over Visual Basic 6?
when you have re-written legacy applications?

2) What were the good and bad experiences you had in this process?

We need to present as case to the board of how the company will benefit from
a migration from vb6 to vb.net

Many thanks

Chris
 
S

sloan

//I'd
recommend jumping straight to C# if possible. Maybe that's just a personal
preference. //

I'd also vote that way.

Mainly because you **cannot** bring bad vb6 habits with you going this
route.

I was a vb6'er for a long time. It paid the bills for a long time.

This is just my (one) opinion among many.

But the argument that "its easier to go from vb to vb.net because of
syntax.... I'm not keen on.

OO is the bigger consideration. Not language syntax.


http://www.codeproject.com/dotnet/CSharpVersusVB.asp
and a rebuttal
http://www.codeproject.com/useritems/C___Versus_VB.asp

will throw some fuel on the fire as well.
 
N

nateastle

In answer to your first question:

the .net platform will give you much more flexibility with your
applications (doesn't matter if you choose c# or vb). You will get a
lot more built in controls to help you display your data, it will be
easier to find resources to work on your applications in the future. I
have found it is getting harder to find people willing to go back in
time with various frameworks when they know they will not be able to
go anywhere in the future. This isn't just a microsoft thing it is an
every language thing. It's not easy to find someone who is going to be
willing to write cobal. With the .net platform there are many tools
that will help with development and deployment.

In answer to your second question:

I haven't really had any bad esperiances with migration. Some of the
stumbling blocks come with web apps if you are switching from classic
asp to asp.net. If you are doing just winforms, it gets easy to strip
off your bussiness logic and put it in webservices and still have your
vb apps running but hitting the webservices which is a good way to go
if you ever want to devlop a web front end then you will not have to
rewrite your bussiness logic.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top