VC++, Installshield, and Win2K/XP

The setup.exe for my program was created under VC++ 4.1 with the bundled SDK version of InstallShield.  It works fine under Win95, WinNT, and Win98.  But it doesn't work under Win2K and XP.

(1) Is this to be expected?  

(2) I have a copy of VC++ 6.0.  Is the setup.exe apt to work under Win2K and XP if I recreate it with the InstallShield that comes with this version?  (Note that the program code won't compile under VC 6.0 because of syntax rule changes, so it would be  matter of working with the exe created by VC++ 4.1)

(3) Or am I going to have to buy a commercial installation tool?  Not surprisingly, this was the reaction of the people at InstallShield when I called them.
Who is Participating?
DanRollinsConnect With a Mentor Commented:
I'll bet that the failures relate to InstallShield attempting to create a Win3x-style "Program Manager" group.  That would have been "standard operating procedure" back when VC 4.1 was in use.  And the OLE-techniques used to do that are know to fail in certain situations and may not even be supported in WinXP.

With very little effort, you should be able to change the settings in InstallShield so that it only creates a Win9x+ -style 'programs folder' and/or a desktop item.

Unless... is there anything unusual that the install does?  Does it register a bunch OCX files and so forth?  Does it attempt to copy DLL files into Windows system directories?  Does it (heaven forbid!) attempt to modify the Win.INI file?

-- Dan
Hi hansenk,
(1) yes, there are some differences between these versions.

(2) What version of the InstallShield do you have?

(3) What parts of the installation script fail? Cause if the most works, you may be able to write a script that runs the installation script and "helps" it a bit..
Dis you think of using other installation product? something free? like the one that comes with the Win2k?
hansenkAuthor Commented:
(2) My InstallShield (the one that came with VC++ 4) is called "SE" (presumably for "SDK Edition").  I don't see a release number or other more detailed identifier.

(3) The reported failures are spotty--they don't happen all the timer.  I don't have info on where in the install they occur, unfortunately.  (Next time I'll ask for it.)

<<...the one that comes with Win2K...>>
Interesting idea.  My impression is that this uses the Windows Installer.  Other things being equal, I'd rather not get into that; the great majority of the installs are onto machines where that doesn't exist yet.  I know it can be made part of the install; it somehow feels simpler if the setup can avoid it.
Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

<<(3) The reported failures are spotty--they don't happen all the time>>???

What do you mean? Your install script sometime works fine on Win2K or XP? If it does.. the the problem is different.. and we'll need more data to debug it.
Did I understand you correctly?
DanRollins, but hansenk said it sometimes works and sometimes not...
Yes, and I said:
>>...And the OLE-techniques used to do that are known to fail in certain situations

But I agree, we are shooting in the dark until we get some concrete info on failure modes.

-- Dan
hansenkAuthor Commented:
Thanks for the suggestion.  I'll pursue the 'program group' possibility and confirm if it solves the problem for the first reporter of the problem.
hansenkAuthor Commented:
Haven't been able to confirm with the person who reported the error, but I don't want to leave this hanging.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.