Asked by Wayne. Answered by the Wonk on January 27, 2003
You really have three choices here:
1) You can leave your application in VB6 or port it to VB.NET and distribute your application (along with all of the patches) via a setup program or MSI file.
2) You can rewrite your VB6 application in ASP.NET, keeping as much of the flavor of the original application as possible.
3) You can port your VB6 application to VB.NET and deploy it as a “smart client.”
#1 has the advantage that distributing an application and its patches is well-known and well-understood. The disadvantage, of course, is keeping all of the client machines up to date with the latest version of the application.
#2 is nice because you get the web application deployment model. The downside, of course, is that you’re pretty much rewriting your application from scratch and, no matter what you’ve heard to the contrary, this is not an easy job. Plus, when you’re done, you’ll just have a web site and not a fully-featured Windows application.
If you’re not familiar with .NET “smart clients,” they’re Windows applications built using .NET that are launched with an URL, e.g. http://networkofpcs/myapp.exe. #3 allows you to port your VB6 application to VB.NET and then deploy it by parking it on a web server and emailing around an URL. As your application changes, e.g. bug fixes, new features, etc, each client will get the latest and greatest version when they surf to the application.
For more information about #3 (one of my very most favorite things about .NET), check the following sources:
I have feedback on this Ask The Wonk answer