Companies that have built Visual Basic 6.0 applications may already be using Visual Studio 2008 to develop new code. But what about older applications that need to remain operational, even when development organizations move on to new operating systems and development platforms?
Microsoft offers its take on this situation and presents some interesting solutions in an article entitled "Using Virtualization to Preserve A Visual Basic Client-Server Application" in the Visual Studio 2008 Developer Center Web pages. The approach depends on virtualization of both client and server components, and uses Windowless Terminal Services with Windows Server 2008 to provide virtual runtime environments that clients running Windows XP or Vista can access easily from their desktops.
Virtualization on the server side lets Windows NT 4.0 servers run virtually so that outdated third-party software components can continue to run unaltered in the environment for which they were built. Virtualization on the client side lets users run legacy applications that are incompatible with their current desktop operating systems (especially Vista). The client portion can run on a Windows Server 2008 that runs a virtualized Windows XP or Windows 2000 environment, where Windowless Terminal Server lets users work with the legacy application as if it were running standalone on their desktops.
To support the client side, a Windows Server host operating system can support virtual machines running Windows 98, 2000, or XP using Microsoft Virtual Server 2005 R2 SP1 (this software runs on Windows 2000, Windows 2003 Server and Windows Server 2008 host operating systems). It's also possible to use Microsoft Virtual PC 2007 to operate older desktop versions of Windows within virtual machines on XP or Vista (though the more limited processing power and memory resources on desktop machines means this may not work as quickly as it would on a server).
Keeping legacy code alive proves easier if the legacy runtime environment is virtualized. Then it can be encapsulated in a virtual machine runtime environment on either a desktop or a server PC that runs a newer host OS on newer, more capable hardware. Terminal Server helps legacy clients to make the connection with legacy servers, keeping the code accessible and active for the foreseeable future.
Ed Tittel is a writer and trainer whose interests include XML and development topics, along with IT Certification and information security. E-mail firstname.lastname@example.org with comments, questions, or suggested topics or tools to review. Cool tools rule!