Is it really convenient to upgrade to VB.NET?
Hello, I would like to ask you to give me some good reasons why a VB5/VB6 programmer would make a wise decision upgrading to VB.NET.
On the contrary, I want to explain to you why I believe that the .NET version of VB does not bring any advantages to a Windows programmer.
I produce Italian shareware programs that I publish on the Internet or in CD-ROMs attached to computer magazines. So far I have been programming my software using VB5 (I also believe that upgrading to VB6 is disadvantageous, but I'll tell you about it later) and what I really like about it is the fact that you don't even need to create a setup application if the final user of your program has got Windows 98 or a later version.
This is thanks to the fact that when you install Windows 98 you also install all the DLLs needed by VB5 programs (MSVBVM50.DLL and OLEAUT32.DLL) since they are included in the operating system. Since these two libraries are the only ones needed by all programs developed in VB5 (provided that you don't use OCXs), it is enough to distribute the .EXE file to make your software run on a computer equipped with Windows 98 or later version.
Unfortunately, this is not true if you consider an application developed in VB6 in that the version of OLEAUT32.DLL needed by VB6 programs is more recent that the one you can find in Windows 98, so you will need to provide the final user with an installation program that can replace the older library with the newer one. That's why I said that upgrading to VB6 may be counter-productive.
Now, if you think of the .NET framework required by even the smallest piece of software developed in VB.NET, you can easily understand why I am convinced that for programmers of Windows applications this would mean shoot themselves in the foot. I have done some personal research and found out that among the users of my software there was nobody who had installed the .NET framework on his or her computer. The majority of them didn't even know what the .NET framework was.
Somebody may object to what I am saying by suggesting that you could distribute the .NET framework together with the .EXE file but this solution cannot be implemented if you make your software available on the Internet: you can't ask your "customers" to download a 20-megabyte virtual machine just to make your program work. The .NET framework is too cumbersome to be dealt with as a "normal" runtime library.
So, the conclusion I have come to is, if you are a shareware programmer and want your software to reach as many users of Windows-based computers as possible, stick to VB5. In the future, when - and if - the .NET framework is installed on the majority of home PCs, you may consider the idea of switching to VB.NET.
Thanks for your attention.
Perugia - Italy
Interesting points. I develop and distribute VB6 software and have encountered the problems you describe. Anybody want to swap their VB5 for my VB6
July 10th, 2003, 01:34 PM
Well, after all I don't think that using VB6 instead of VB5 is extremely counter-productive. All you have to do is prepare a setup package for your application.
On the contrary, you would have serious problems if you distribute your applications developed with VB.NET to a user who doesn't have the .NET framework installed on his or her computer. As I said, providing the final user with the framework is not feasible.
With the advent of the new version of Microsoft Windows the situation will change completely: the .NET framework will be an integral part of the OS.
For the moment, we need VB.NET not to distribute our apps but to learn and do practice with the new syntax.