Log in

View Full Version : How to get to Install ??


Greyhound2004
August 14th, 2009, 13:28
I have a program on cd that I would like to install to run on win Xp.
The version I have is for Win 95/98 and will not install on XP.

On the install cd there is a file os.dat which contains the following data :

[Info]
Name=PLATFORM
Version=1.00.000

[0x0009]
OS Independent=0x0000000000000000
Windows 3.1 & 3.11=0x0000000000000001
Windows 95=0x0000000000000010
Windows NT 3.51 (Intel)=0x0000000000001000
Windows NT 3.51 (Alpha)=0x0000000000002000
Windows NT 3.51 (MIPS)=0x0000000000004000
Windows NT 4.0 (Intel)=0x0000000000010000
Windows NT 4.0 (Alpha)=0x0000000000020000
Windows NT 4.0 (MIPS)=0x0000000000040000

Next I installed the prog on Win 98 running under VMware.
This installs and runs fine. Then I copied the folder and all the reg keys accross to the drive with Win Xp changing the paths etc to suit new location.
There is what appears to be a 'front end ' program with icons that access individual programs. Clicking on the individual programs and they work fine so they dont appear to be using functions specific to Win 95/98.
Then I took a look at the front end menu program with IDA but did not glean much.

I'm guessing that the install prog checks some kind of signature and compares it to those in the list. My understanding is that Win Xp is based round Win NT and as that is specified why won't it install ?
How can I fool it?
I'm pretty sure that when the program is installed it custom writes infromation within the exe front end menu prog as to the locations of the individual programs. It looks like when I click on the button in the front end that it is not pointing to the correct location for the desired program. I could modify the action when you click on the box.

It would be nice to get a 'clean install' without having to mess about so would be gratefull of any ideas.

disavowed
August 14th, 2009, 21:02
search in the installer for the error message string you get when trying to install on xp. the os check is likely near where that string is referenced.

Greyhound2004
August 15th, 2009, 02:39
Thanks Disavowed.
I dont know what I did but some how I got the prog to install so problem solved.
I'm now just interested, The prog will run on Windows 3.1 to Windows NT 4 so it obviously installs different versions of dll to suit and puts them in the right place depending on what OS its detected.
Searching the web I found routines to do this in Java VB and C+

The thing that I cant understand is how and why the programmer would want to prevent install & use on an XP machine when this is based around NT ?

evlncrn8
August 15th, 2009, 05:40
if its an installshield installer, some of them which do the os check can be overridden with the -lgntforce commandline

Greyhound2004
August 15th, 2009, 09:43
It does not use install shield but thanks for the info i'll remember that one for later.

disavowed
August 15th, 2009, 13:50
Another thing you could try is right-click on the installer EXE, go to Properties, and on the Compatibility tab choose to "Run this program in compatibility mode for..."
I believe this causes Windows to hook certain API functions and return different values to make it look like the program is running on an older version of Windows.

Greyhound2004
August 17th, 2009, 06:30
Thanks, I forgot about compatability mode.
I have got the prog to install now so all is well. Just wanted to understand what the problem was.

usernombre
August 29th, 2009, 11:13
I would guess that the program was made before XP came out and checks specific versions instead of (version > 3.1)