PDA

View Full Version : Failure to Install - Wrong OS Version



DoomFruit
29.06.2008, 13:26
Hi. A recent update to Battlefield 2142 (version 1.5) made Daemon Tools start complaining about emulation software (even with YASU), so I thought that an update might be in order.

I downloaded the most recent version (4123) from your website, try to install it and it complains that my OS (WinXP SP1) isn't in the supported list, which technically it isn't (and yet 2000 SP4 is...).

Yes, I know, you'll tell me to install SP2, but there are several reason why I won't do that. So I'd like to know if there's any way of forcing it to install on an SP1 system.

Underheaven
02.07.2008, 23:07
You could install the service pack then uninstall the service pack. That might work.

btw I'm on SP3 already, and if you're worried about the stupid security and firewall stuff from SP2 yes i hated that for a long time but eventually just accepted it.

mastermind
03.07.2008, 16:55
The additional security features in SP2 and SP3 (which can indeed be very disrupting and annoying in some cases) can easily be disabled in the Control Panel.

If you're executing a lot of apps from network paths, you may wish to add the file server(s) to the "trusted" zone to avoid the security warnings each time you launch an executable file (especially if the computers are not in the same domain or workgroup).

Underheaven
03.07.2008, 23:34
disabled in the Control Panel.Internet zone cannot be set to 'Low' instead of medium.

p.s. Off topic ftw http://www.daemon-tools.cc/dtcc/images/icons/icon12.gif

mastermind
04.07.2008, 01:14
Internet zone cannot be set to 'Low' instead of medium.

p.s. Off topic ftw http://www.daemon-tools.cc/dtcc/images/icons/icon12.gif
Okay then, so perhaps not everything may be changed ;). But having a security level higher than "Low" is probably not a bad thing, even for really control hungry people ;)

DoomFruit
09.07.2008, 18:32
I'm not going to install SP2 because (amongst other things) it breaks old games. Installing it and then removing it again might work, but deinstalling a service pack is a recipe for disaster and general instability. If I could find wherever it is Windows gets its service pack status and build number from and change that, it might work, but I've tried and I can't seem to affect it.

Underheaven
10.07.2008, 06:43
Hmm, you're right. Anyone who cares about avoiding a whole system reinstall would not install then de-install a service pack ;-)

I guess the next questions to ask are
1) Why doesn't DAEMON Tools work with XP SP1 ?
2) How do you trick an install program that looks for SP2?
3) What was the last version of DAEMON Tools 4 to work with XP SP1 ?

I don't know these answers :)

DoomFruit
10.07.2008, 10:32
Hmm, you're right. Anyone who cares about avoiding a whole system reinstall would not install then de-install a service pack ;-)

I guess the next questions to ask are
1) Why doesn't DAEMON Tools work with XP SP1 ?
2) How do you trick an install program that looks for SP2?
3) What was the last version of DAEMON Tools 4 to work with XP SP1 ?

I don't know these answers :)It's not so much failing to work as the installer bitching that I don't have 2000 SP4, XP SP2, 2003 or Vista. I suspect that it would actually run perfectly well if only it would install, since the 2000 SP4 kernel is most likely less capable than that of XP SP1.

Tricking an install program could either be done by hacking the installer (if it's an MSI file, there's a MS tool called "Orca" which can edit them and adjust the required version section) or by altering the parts in Windows where the version string comes from. I can't find where (or indeed if) Daemon Tools extracts its files to for installation, so the first option is right out.
The second option failed, too. There's a section in the registry which has the build number and service pack info, but changes to that only apply upon a reboot and rebooting the system causes them to be reset back to normal. Altering some of what I believe to be core system files (explorer.exe, shell32.dll, kernel32.dll) with a program called Resource Hacker to change their version strings to those found in the relevant SP2 files had no effect.

I can't remember what the last version to install on SP1 was - I'll check when I get home.

mastermind
10.07.2008, 17:37
I believe "tricking" Windows to think it's SP2 will be a complex task, making you busy for quite some time ;) I'm not familiar with the DT team's reasons for requiring SP2, but I trust there is a better reason than mere principles.

The world of computers is in an ever-evolving state, and things do change and get updated (and will keep doing so). I'm somewhat of a nostalgic myself, playing very old games from time to time. But since old games normally do not have recent updates available, I can't expect them to work "out of the box" on the latest operating systems. As for DT, they have to accept changes and "go with the flow", and can't be stuck in the past.

Note that my intention is not to argue with you here, I'm just speaking plainly and honestly.

However, as I said, I'm nostalgic myself, and it's normally not "impossible" to make things work, even though it may be a challenge. I have no tips to give you regarding fooling Windows to believe you have SP2, as I have never done any research on that.

DT's installation package is not MSI-based, as you say, and cannot be modified more easily than any other binary. I haven't inspected it closely, but it doesn't seem to be able to override settings/variables with command line arguments or external value files.

If it were me, I would probably install DT Lite on a "clean" virtual machine with XP SP2, monitor changes and repackage it - for my personal use. However, DT isn't ordinary simple software. Instead of attempting to make a complex repackaged installation, one could just monitor changes, make .reg files, and copy the needed files to somewhere. Then one could try to make it work manually on the XP SP1 computer. SPTD should be installed separately, with the official SPTD installer.

The question is, is it really worth going through a lot of effort because of a few old games with compatibility issues with SP3 (and/or SP2)? Are there no ways to run them in compatibility modes, run them properly in an emulator or anything like that?

DoomFruit
10.07.2008, 18:03
I believe "tricking" Windows to think it's SP2 will be a complex task, making you busy for quite some time ;) I'm not familiar with the DT team's reasons for requiring SP2, but I trust there is a better reason than mere principles.

The world of computers is in an ever-evolving state, and things do change and get updated (and will keep doing so). I'm somewhat of a nostalgic myself, playing very old games from time to time. But since old games normally do not have recent updates available, I can't expect them to work "out of the box" on the latest operating systems. As for DT, they have to accept changes and "go with the flow", and can't be stuck in the past.

Note that my intention is not to argue with you here, I'm just speaking plainly and honestly.

However, as I said, I'm nostalgic myself, and it's normally not "impossible" to make things work, even though it may be a challenge. I have no tips to give you regarding fooling Windows to believe you have SP2, as I have never done any research on that.

DT's installation package is not MSI-based, as you say, and cannot be modified more easily than any other binary. I haven't inspected it closely, but it doesn't seem to be able to override settings/variables with command line arguments or external value files.

If it were me, I would probably install DT Lite on a "clean" virtual machine with XP SP2, monitor changes and repackage it - for my personal use. However, DT isn't ordinary simple software. Instead of attempting to make a complex repackaged installation, one could just monitor changes, make .reg files, and copy the needed files to somewhere. Then one could try to make it work manually on the XP SP1 computer. SPTD should be installed separately, with the official SPTD installer.

The question is, is it really worth going through a lot of effort because of a few old games with compatibility issues with SP3 (and/or SP2)? Are there no ways to run them in compatibility modes, run them properly in an emulator or anything like that?Yeah, I know that it's not going to be easy to trick Windows into thinking it's a different version - the distinction between Home and Pro, for example, is only in a few squirreled away variables and not in the actual files. I suspect that MS wouldn't want people installing tiny registry hax on their Home systems to bring themselves up to Pro and so they stuck in a lot of checks.

You're right - the best option probably is to log the effects on a clean install, save the registry changes and copy across the files. I have a dark suspicion that it won't be that easy - the same methods which DT Soft use to hide it from various evil things like Securom would probably hide it from me too. Sure, I could probably get the bits that aren't hidden, but the hidden bits are what I need to pacify Battlefield 2142 again.

As for emulation or compatibility, I don't know how well it would work - I'm thinking of 1997-era games which ran best on 3DFX cards. I may as well try and run them on the SP2 installation while I'm testing DT on it - who knows, Uprising, Battlezone and Blood 2 might work after all...

Oh, and the last version that installed on XP SP1 was 4.12.0.

Underheaven
10.07.2008, 18:16
Oh, and the last version that installed on XP SP1 was 4.12.0Thanks for finding this!

mastermind
10.07.2008, 20:34
Regarding the "hidden" elements you mention: I think this essentially involves randomness; e.g. virtual device names are randomly generated. If you have a program that monitors the entire registry and entire hard drive, you should have everything you need. You would have to find the difference between the "before" and the "after" (DT Lite installation). Naturally, you would have to remove unwanted nonsense from Windows (e.g. MRU lists etc.) and active background processes (e.g. antivirus software).

DoomFruit
13.07.2008, 11:19
Regarding the "hidden" elements you mention: I think this essentially involves randomness; e.g. virtual device names are randomly generated. If you have a program that monitors the entire registry and entire hard drive, you should have everything you need. You would have to find the difference between the "before" and the "after" (DT Lite installation). Naturally, you would have to remove unwanted nonsense from Windows (e.g. MRU lists etc.) and active background processes (e.g. antivirus software).I've tried this on a completely clean system using Sysinternals' Process Monitor. I don't know how much detail on it I can or should go into here (reverse-engineering something which is designed to be hidden on its own forum just seems rude...), but it's more than just randomness. The driver files aren't visible in Windows and can't be found when looking at the installation from a Linux live CD using ntfs-3g. The installer never decompresses its files anywhere. Make no mistake, DT Soft have gone to a lot of effort to hide what and where the core of their programs are.

Copying over the evidence of DT I could find (in C:\Program Files\Daemon Tools\) from the SP2 to the SP1 system changed the front end, but did nothing about the back end - the stuff in Device Manager didn't change, nor did BF2142 work.

I'll probably have more success confusing MS than DT, so I'll go back to altering build numbers.

Underheaven: that thing you PM'd me about - I already found it when nLite-ing this test SP2 installation (a new machine for my brother) and came to the same conclusion.