PDA

View Full Version : No uninstall.exe installed during web installation



JimLay
05-03-2008, 04:09 PM
I've ran across a problem where it appears as though an uninstall.exe is not provided in the installation when "Enable Web Installation" is checked and used. (versus a one file setup.exe with the same config file where it does provide the uninst_appname.exe file as expected.)

With the Web Install, the normal entry exists in the Add/Remove programs dialog, but of course fails with an "already removed" type message when it attempts to run the uninst_appname.exe which wasn't installed. Again, when I uncheck the web install and use a single file install with the same configuration file, it works correctly and places the uninst_appname.exe in the installation folder.

Reproducible on XP and Vista (32) deployments. Compiler dialog shows the normal uninstall audit trail in both cases.

Jim

linder
05-04-2008, 01:31 AM
Jim,

Works without any problem here. Tested on all XP test machines (including SP3) and all Vista and 2008 machines (including SP1 and x64).

Here is the test web install. Please run it and it will install notepad.exe into Program Files\web_test. It will also install the uninstall .exe. The install/uninstall is not code signed because I'll also provide the source code.

www.lindersoft.com/web_test/web_test.exe

Here is the test project:

http://www.lindersoft.com/web_test/web_test.sb6

Hope this helps.

Friedrich

JimLay
05-04-2008, 09:46 AM
Friedrich,

First of all, thank you for responding to my question so quickly (and on the weekend), as you often do. If you ever need a testimonial on service response and quality for your product, just let me know.

I thought that since I could check/uncheck the "Enable Web Installation" and cause the uninst_XXX.exe to be installed or not (with that single change) that it was a setupbuilder issue. I tested the notepad install that you provided and it works correctly in all test conditions too.

Based on your example, it's likely that I'm doing something in my script to cause this. My install/uninstall are code-signed, but I doubt that would have any impact on the circumstance that I'm seeing, but still, clearly a place for me to look first.

Thanks for sending the sb6 file, I'll compare it to what I'm doing and let you know what I find out.

Jim

linder
05-04-2008, 10:04 AM
Jim,


First of all, thank you for responding to my question so quickly (and on the weekend), as you often do.

You are very welcome!


If you ever need a testimonial on service response and quality for your product, just let me know.

A testimonial would be great :) Thank you!


I thought that since I could check/uncheck the "Enable Web Installation" and cause the uninst_XXX.exe to be installed or not (with that single change) that it was a setupbuilder issue. I tested the notepad install that you provided and it works correctly in all test conditions too.

Based on your example, it's likely that I'm doing something in my script to cause this. My install/uninstall are code-signed, but I doubt that would have any impact on the circumstance that I'm seeing, but still, clearly a place for me to look first.

Thanks for sending the sb6 file, I'll compare it to what I'm doing and let you know what I find out.

If you are interested, send your project (.sb6) to support@lindersoft.com and we'll check it!

Friedrich

JimLay
05-04-2008, 12:47 PM
Friedrich,

After a couple of hours of isolation testing, I've found some new information. The circumstances that I described above pivot on whether the Windows Installer 3.1 is a core prerequisite or not.

I'm able to reproduce this problem using your sample notepad install as well. When the Windows Installer 3.1 is added as a core prerequisite, the uninst_xxx.exe program file is not installed as expected.

I've included your sb6 file with the 3.1 prerequisite which does not appear to work. If you want, you can test from this web site : http://www.highroadsoftware.org/web_test/web_test.exe

Screen shot of program folder after installation attached as is the sb6 file that you provided (with the core prereq of Windows 3.1 as a requirement).

I have Windows Installer as a prereq because .net Framework 2.0 is a prereq for my apps.

I wouldn't be surprised if I've missed something simple here, but it seems that the use of the Windows installer 3.1 is not compatible with a web install setup?

Setupbuilder version: 6.7.2219 Web Update: 6.7.2219.0

Jim

linder
05-05-2008, 12:03 AM
Jim,

Hmm, I can reproduce this with the web_test.exe from your web site.

-BUT- <g>

I recompiled your script here (the very same script) and it works fine.

This is the binary:
www.lindersoft.com/web_test/web_test2.exe

This is your version of the script:
www.lindersoft.com/web_test/web_test2.sb6

Please do the following and recompile your script:
http://www.lindersoft.com/forums/showthread.php?t=9012

Does this change anything?

Thanks,
Friedrich

JimLay
05-05-2008, 12:57 AM
Friedrich,

I almost reloaded the 3.1 runtime this morning but had checked the version numbers and what I had local (3.1.4000.2435) matched what was available so I wrote it off as redundant.

I did as you suggested and removed and re-downloaded the 3.1 runtime and recompiled. The sample project now works. Obviously I must have had some sort of corruption of my 3.1 runtime (a bit worrisome). I'm not sure why the 3.1 runtime worked when single file deployed vs not working with web enable deploy but we've spent enough time on this now and the solution is definite enough.

I just finished recompiling a reasonably large project that I had the original problem with and it is correct as well.

Thank you for your help,

Jim

linder
05-05-2008, 01:02 AM
Hi Jim,

I think this was definitely a (very strange) bug in the MSI 3.1 redistributable script. I am glad that it's working fine for you now!

We'll check this again with the "old" MSI 3.1 script to find out what caused this. But it seems to be fixed in the latest version.

Thanks,
Friedrich