PDA

Click to See Complete Forum and Search --> : How do u know if your program works on windows xp, or doesn't work on older windows ?


iflash
Jan 6th, 2002, 09:10 PM
Hi,

I really want to know how do u know whether your program works on the lastest version of windows and not older ones. I saw some commercial programs simply have new versions that support such and such. And once i know whether the program supports it or not, how do i modify to make it compatible?

thnx

CornedBee
Jan 7th, 2002, 10:17 AM
Basically, since all windows programs use the windows API, they work on all versions later than W95. But there are ususally extensions to later versions and some older things get unsupported. If you use any of these things, your code won't work on all versions. E.g. a while ago someone here asked why his appp worked only on XP. I looked at the documentation of a special function that produced the failure and saw that it was new to XP. Therefore the app failed on ME and NT etc.

If you really want to make a commercial-quality application, you won't get around a lot of beta testing, and you have to test on different systems. If it doesn't work on one system you can either try to recode that part in a way that runs anywhere or disable the feature for some windows versions or simply require a version where it works (you can ignore W95 and NT 3 and less but no others). Making a program that doesn't run on 98 won't make customers happy.

Another thing is UNICODE, the wide character set. You can either make an application that uses UNICODE or one that does not (but you can make the support depend on as little as a compiler switch - you just have to recompile). If you don't use UNICODE, the app will run on NT, 2k, XP, ME and 9x. If you use it, it will run on NT, 2k, XP and CE. Read in MSDN about UNICODE (or in the Win API bible, the Petzold)