We have a VB6 application that we're in the process of moving from Windows XP to Windows 7 and we've run into several issues. Some of these issues go away if we set the Compatibility Mode of the application to Windows XP (Service Pack 3).
I'm wondering if simply running our application in Compatibility Mode is a good solution or not. I've been doing some Googling and have not found anything that implies there is a down side to using Compatibility Mode. But most people use it for applications that they aren't developing.
The long-term goal is to replace all of the VB6 code with C#, but that's going to take time. Maybe using Compatibility Mode while we replace the VB6 isn't a bad thing.
Has anyone had experience with developing an application and intentionally having it run in Compatibility Mode? My gut says it's a bad idea, but I cannot find any evidence against using it.
There are consumer apps (really bad idea compat mode) and Line Of Business apps - you do what you need to do. You control the environment.
These are the specific things WinXPSP2 does (I don't have an SP3 option on Vista).
A good guess is your app needs to run elevated (# 2 on list above).
BTW If starting a process it starts it normally and if (the end function that does it) createprocess fails with ElevationRequired it restarts it elevated.