I've been creating a small program, thats work fine under windows xp, but fails on windows 2000 pro/server, and also windows 98.

I need the software to work on also windows versions, etc 95 and ME.

I can't install it as it is a check to ensure that various software has been installed before shipping out to customer, so having to run directly by floppy and usb.

any ideas? I'm using Delphi 6 at moment


If you have the time to spare, and a copy of the OS'es available, you can get vmware, which'll let you install the copies of previous versions of windows in a virtual machine - so it doesnt affect your existing hardware. Other than that, theres no way you can guarantee that the program will run properly - different versions of windows have too many coding differences to make it possible.

get vmware from www.vmware.com

if this isn't possible, then if you can find someone still using a copy of win95, thats the only way to do it!

S Bedford

Have you verified which functions failed? I suggest not to use anything that's specific to a particular OS version.

Also, better test your program on each of the OS you need to support. Only way to be really sure...

fails straight away with kernel32.dll error on windows 2000 - but not sure why as on certain win2000 machines it will work

it has to work on all versions of windows ideally

are you using components from the windows kernel or registry? the kernel has been updated on more recent versions of win2k to support the same features as xp. Theres more information about kernel changes at msdn. Thats the only reason I can think of as to why you get kernel errors - unsupported commands in older versions of the Windows kernel


i'll check it out - mainly using the registry to read values using TRegistry, and check fileversion numbers of particular files

Be a part of the DaniWeb community

We're a friendly, industry-focused community of 1.19 million developers, IT pros, digital marketers, and technology enthusiasts learning and sharing knowledge.