Software Development on Windows Vista
January 9th, 2007Windows Vista introduces new opportunities for developers, but it also introduces a number of challenges if Vista is chosen as the primary development platform. The first decision that you need to make is whether you want to simply support the new operating system as another platform and continue to develop your software under Windows XP or Windows 2000, or if you want to upgrade to Vista. A significant factor in that decision is going to be the programming languages and development tools that you use.
Visual Studio 2005
If you use Visual Studio 2005 and are interested in moving to Vista as your development platform, you’re in good shape. Microsoft supports Visual Studio 2005 on Vista, and Service Pack 1 was released on December 19th, 2006. If you previously installed the beta version of the service pack, make sure that you uninstall it first, before attempting to install the released version or you may encounter errors during the installation.
It’s also recommended that you download the .NET Framework 3.0 and Windows SDK for Vista, which is the latest version of the Platform SDK. One note of caution for developers who are also using older versions of Visual Studio: Do not replace your previous Platform SDK with the new Windows SDK, particularly if you’re still using Visual C++ 6.0. Also, if you use third-party plug-ins for Visual Studio, check with the vendor to make sure that they support Vista.
Visual Studio .NET 2003
If you are currently using Visual Studio .NET 2003, you can install it under Vista; however, it is not supported by Microsoft and they don’t recommend that you use Vista as your development platform. Under most circumstances, you will probably find that Visual Studio .NET 2003 will work correctly. We have it installed on Vista, primarily for testing purposes, and are able to edit, compile and debug programs locally. Where you can run into problems is with remote debugging and COM interop.
If you want to try using VS.NET 2003 with Vista, make sure that you download and install Service Pack 1 if you haven’t already. If you’re using third-party plug-ins, make sure that they’re still supported. Because Microsoft won’t support older versions of Visual Studio on Vista, some vendors may choose to only support Visual Studio 2005 on the platform.
Visual Studio 6.0
Although the number of developers using Visual Studio 6.0 has steadily declined over the past several years, there are still a fairly large number of companies that continue to use Visual Basic 6.0 and Visual C++ 6.0. As with Visual Studio .NET 2003, Visual Studio 6.0 is not supported under Windows Vista and if you cannot upgrade to Visual Studio 2005, Microsoft recommends that you continue to use Windows XP as your development platform. There is some good news, and that is Microsoft will continue to provide support for the Visual Basic 6.0 runtime in Vista. This means that programs you develop using Visual Basic 6.0 will continue to run and be fully supported.
If you’re using Visual C++ 6.0, you’ll find that for the most part you’ll be able to use the IDE and compiler without a problem. However, remote debugging and using ActiveX controls can present problems. For example, adding components to your project (through the Project | Add to Project | Components and Controls menu option) may not work correctly.
Borland Developer Studio 2006
Borland has promised support for Vista and the .NET 2.0 Framework in 2007, however the current version of Borland Developer Studio is not supported under Vista and they recommend that you continue to use Windows XP as your development platform. Because Borland only supports version 1.1, developers won’t be able to take advantage of some of the new features included with Vista and the .NET 3.0 Framework until the new version of BDS is released.
Third-Party Languages
There are a large number of third-party languages available for Windows, and many of them will continue to work under Vista without a problem. The two key areas that are most likely to encounter problems are debugging and support for ActiveX controls or Automation. In some cases it may be required to run them with elevated privileges, either from the command line or from within their IDE. If you experience problems, select the shortcut to the program from the Start menu and right-click on it. Select Properties and the property sheet for the shortcut will be displayed. Next, click on the Compatibility tab and make one or more of the following changes:
1. Enable compatibility mode and select Windows XP (Service Pack 2). If the compiler is performing operating system version checks, it will continue to think that it’s running under XP. If this doesn’t work, try setting compatibility to Windows 2000.
2. Check the option to disable visual themes. This will disable theme support in the application, and is a good choice if you’re noticing problems with menus or buttons not being drawn correctly.
3. Check the option to disable desktop composition. This will disable the advanced features in the Aero Glass interface, such as transparency. This is a good choice if you notice problems with windows not being drawn correctly. For example, if the IDE includes visual tools to create and edit forms or dialogs, you may find that controls are drawn very slowly or aren’t redrawn in the correct position. Disabling this feature will often correct the problem, however it will force the entire desktop (not just the application) to disable the Aero UI until the program terminates.
4. Check the option to run the program as an administrator. This will allow the IDE or compiler to run with elevated privileges. If you are experiencing problems debugging your application or using third-party ActiveX controls, enabling this option may correct the problem. Note that if this option is enabled, you will be given a UAC prompt every time that you run it. You should only enable this option for programs that you trust because they will be given full, unrestricted access to the operating system.