Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Chriss Miller on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Why move to VB.Net from VB6 ? 1

Status
Not open for further replies.

moben

IS-IT--Management
Joined
Feb 5, 2002
Messages
116
Location
GB
I have the following questions about VB.Net. We currently use VB6 and have applications currently in use thate were developed with VB6 and Access 2000 as the back end database.

1.What are the benefits of moving to VB.Net for VB6 applications that are working perfectly ok and are not in any way internet related ?

2.Are there pland for Microsoft to phase out VB6 ?

3.Will VB6 work with Access 2003 or is that a reason why I should move to VB.Net ?

Anwsers to these and any related information would be appreciated, as I am preparign a case for moving to VB.Net.

Regards,

Moben.
 
Benefits:
- Managed code is easier to read/edit/fix (esp. using the IDE).
- .NET is Object-Oriented... VB6 is not. Proper OO code is considered by most to be much easier to maintain.
- .NET is built around a framework of classes (much like Java), so that any .NET language (VB, C#, COBOL coming soon if not already out) works exactly the same; it's just a matter of syntax.

Problems you'll run into:
- Upgrading your current applications probably won't be easy... in many cases, it's easier to just rewrite the whole app.
- There's more overhead involved in distributing; each user of the application (not just developers) has to have the .NET framework installed.
- There's a bit of a learning curve for database developers; ADO recordsets are no longer the way to do it. Instead, ADO.NET (which is built around "DataSet" objects and their friends) is *the* way to go.

As for Microsoft's plans with VB6, I wouldn't be surprised if they phase it out in the next several years... but it won't be too soon. I mean, they're just now discontinuing Win98 support... so you've got some time.

As for VB6 with Access 2k3, I have no idea. I would assume that if you have the right version of the DAO (or ADO) libraries, you'll be ok... but I can't say for certain.

HTH

Ben

There's no place like 127.0.0.1.
 
Hello,

I am working with VB.NET for a couple of months now and was used to do extensible VB6 programming.
Which each day using VB.NET I am more convinced about this language but for most, about the whole conecpt behind it.

Hopefull you will engange in that step...

Greetings,
Henry-JP
 
Ben,

Thank you very much for your information on VB.Net and VB6

Regards,

Moben
 
I'm using VB6 and learning VB.net. The curve is bigger than I expected (at least to do it the "right" way as explained in the tutorials).

I'm looking forward to using VB.net, but for now, VB6 is serving all of our needs.

I'd also suggest you upgrade to an SQL database instead of Access. Try MySQL even. You have much more leaway with SQL and it's not that hard to learn the basics.
 
So if ships start sinking, we can blame Bill?

--------------------------------------
"We are star-stuff. We are the universe made manifest trying to figure itself out."
-- Delenn in Babylon 5 - "A Distant Star"
 
Two things that are a major pain in the a$$...

1.) Your clients need the .NET Framework installed. You can't compile and include the necessary support DLLs.

2.) Your forced with .NET's managed garbage collector that chews up memory, and waits until it wants to to release the physical memory. So your simple windows form will chew up 10mb of memory in task manager. Your clients will probably freak out, and tell you your program is fatter than office. :)
 
Thank you all for your responses, they are very useful.

I have question regarding the back end database engine.

Currently am developing VB6 applications with Access 2000. Owing the size of the application, number of users and the size of the company, I don't think it would warrant buying a dedicated server for say SQL-Server (although we do several for vendor supplied applications).

Question 1: What would be a suitable alternative to Access. If I have not had any problems to date, would it be wise to consider moving to another database system ?

Question 2: What is the difference between MySql and SQL-Server ? Would MySql be an alternative in my case ?

Regards,

Moben.
 
On the matter of the database I would suggest that you switch to MSDE because it's free and it's SQL Server in everything but name bar a few restrictions that won't affect you given that you're using Access 2000 right now.

This way you can get experience of Stored Procedures (much more powerful than Access queries), better locking algorithms and greater reliability without having to make huge changes to your code.

Access 2000 includes upsizing tools to allow you to convert to SQL Server (MSDE) and can be used to directly examine your MSDE database thus covering for the lack of SQL Enterprise Manager which is one of the bits you don't get in MSDE.

Incidentally the database structure in Access 2003 is identical to that in Access 2000 so your code will work unchanged.
 
bboffin,
How do I get my hands on a copy of MSDE? I've read bits & pieces about it here & there, but I don't know where to find it or anything.

Ben

There's no place like 127.0.0.1.
 
The difference between Access and servers like SQL Server and MySQL is that with Access it is basically justa file with Drivers that do all of the work. With MySQL and SQL Server there are actual dedicated servers running that do the work and the drivers simply communicate with those servers.
Access can only be communicated with localy, Servers have an open port so you can communicate with them from abroad.

If your planning on using SQL statements, that isn't a reason in and of itself to switch systems. Access will answer SQL just like any other database system.

I would suggest staying with Access since it is working for you right now and doesn't require any difficult steps to install (put file in correct place, make sure MDAC is there), BUT I would also be playing with something like MSDE or MySQL in your spare time so that you will be knowledgeable in the differences and able to decide per project which would be more appropriate.

-T

01000111 01101111 01110100 00100000 01000011 01101111 01100110 01100110 01100101 01100101 00111111
The never-completed website:
 
I'd stick with Access if you're in a small office and not likely to grow.

But if you have growth potential, and you can foresee over ten users accessing your database at a time, definitely look into MSDE or MySQL, the latter of which is free, very popular, and gaining momentum.

We have a fairly small office here at the plant with about 20 to 30 users at any given time.

We have one box dedicated as SQL server; it's a pretty modest computer at that, and something similar could be bought online for under $500.

I gotta tell ya, it works like a charm. Me and my MIS are happy as clams and not looking back.
 
Moben:

In your initial post, you wrote not in any way internet related[/red];

This is one of the BIGGEST misconceptions with .NET! .NET was NOT designed specifically for the web. It sure has made huge hurdles with web applications where Java and Classic ASP had obstacles.

It's extensive Namespaces and paramount features were designed for BOTH windows and web-based applications. I would recommend reading some literature on the Microsoft site and you will see.

Hope this helps.
 
In my opinion, the .Net platform is a good way to go for RAD in a business environment. There will be changes in thinking when coding that will need to be adopted, but for me at least, the changes have been very logical and easy to comprehend. The object model in .Net is definately a big improvement from earlier versions of VB and COM based objects.

With regard to the comment about the Garbage Collector object and performance hits, it's a matter of optimization. As the developer, you have to consider the number, size, and life (scope) of your objects as you did in VB6. The GC is just another tool that helps with memory management in the platform.

Hope this helps.

- Glen

Learning nTier development from the group up.
 
Thank you all for advice.

Finally any suggestions on good readable vb.net books ?


Regards,

Moben.
 
for: benlinkknilneb

MSDE is on the Office 2000 (and later) release disks under the SQLServer folder (iirc). There is no explicit installation option for it (at least on Office 2000) so you have to run setup from this folder.

Alternatively you can download all 70Mb from:


Incidentally is a very good site for anything to do with ASP.NET and includes a free VS lookalike called ASP.NET Web Matrix. Highly recommended if you can't afford VS itself.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top