cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
DownyTif
Level 2

Custom Action not executing on Window 7 only

Hi,

I have a custom action set to happen at "After Setup Complete Success dialog" on all platform. Actually, the action is to run vcredist_x86.exe since it is needed by our software.

I can't do this action before I get an error saying that there is already one installation occurring (yes, my software!) at the same time.

On Windows XP, no problems. On Windows 7, the action just doesn't execute. I suppose it's a right thing, since I had the same behaviour with 2 custom actions at "After Register Product" and when I changed the In-Script Execution to "Deferred execution in System Context", it worked fine for those 2.

Also, is there a way to have the installer auto-detect if the target PC is x64? I would like to force the installation of vcredist_x64.exe also but only on those systems.

Thanks a lot,
DownyTif

PS: Yes ALLUSER is set to "1".
Labels (1)
0 Kudos
(3) Replies
jclark102
Level 4

wont that install it everytime? We depend on vcredist_x86.exe also, so we just have it as a Redistributable and I've no trouble with that on Win7.

Also, look at the VersionNT64 property to determine if your target is running a 64bit OS.
0 Kudos
DownyTif
Level 2

jclark102 wrote:
wont that install it everytime? We depend on vcredist_x86.exe also, so we just have it as a Redistributable and I've no trouble with that on Win7.

Also, look at the VersionNT64 property to determine if your target is running a 64bit OS.


Yeah, for some reasons (that I would very like to know why), I can't use the Redistributables from InstallShield 2011 directly (checking the box). It is not the same version that makes my app work on the target client. If I use the one given by InstallShield (as I would like), my app doesn't start.

The only vcredist_x86.exe that is working has been found on my dev PC under:
C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\BootStrapper\Packages\vcredist_x86

That is why I have to make a Custom Action after the install completes. By I suspect that when that time arrives, I'm out of the secure zone that InstallShield uses so the installation doesn't start on Windows 7 because of elevated rights.

For the 64bits, where do I find this property?

Thanks!
0 Kudos
jclark102
Level 4

We had a similar problem with a redist. What I did to fix it was:


  • copy the exe that I needed (slightly renamed to not overwrite anything in there) into: C:\Program Files (x86)\InstallShield\2011\SetupPrerequisites
  • Copy a similar .prq file, and edit it in notepad to point to your copied exe.
    (There is also a prq editor in IS)
  • Then when you open your IS project you should see your new prereq that you can check.


As for VersionNT64, any 'condition' box will support this. If it's null, then you're not on a 64bit OS. You can also use it in your installscript. If you're doing a BasicMSI project you could have your 'next' button go to two different dialogs depending on this condition... there are TONS of ways you can play around with this. :]
0 Kudos