PDA

View Full Version : Problem with Features not automatically checked



lsdaugherty
04-22-2014, 07:25 PM
I've come across an issue since I updated to the newest version of 8.1.4391.0. I'm trying to create a new build of my installer - it builds just fine, but when I run my installer, the features to install are no longer automatically checked. For this particular project, I've only made 1 change - to my internal version number which indicates what directory the source files will be pulled from. I've double checked and the features are still set to default to checked in the project.

I can copy the exact project over to another computer which is still running 8.1.4227.0 and compile it, and it runs correctly with my feature defaulting to checked.

I noticed on the forums that you did make a change (to an intermediate version) that had to do with Set Feature State. I do make use of that on ONE of my features in this project, so I even tried commenting out that code just to make sure it wasn't affecting the initial state of the features when the installer runs, but it doesn't make a difference.

Anything else you can think of that I can look it?
Thanks,
Lisa

linder
04-23-2014, 02:25 AM
Lisa,

Hmmm, I don't remember any change in the "Set Feature State..." function in SB8.1. I have checked the version history and found this (one year ago):

SetupBuilder 8.0 Build 4000 (March 22, 2013)

FEATURE : Add "Set Feature State..." script function to programmatically enable or disable a Feature.

I have used a File Comparison tool to compare the source code changes between #4391 and #4228 but there is no modification in the Features functionality :-(

Would it be possible for you to create an example .sb8 that demonstrates this (works fine in #4228 but fails in #4391)?

Thank you for your time!

Friedrich

lsdaugherty
04-23-2014, 06:57 AM
This is the change I was referring to that I found on the forum...

http://www.lindersoft.com/forums/showthread.php?t=42418&highlight=set+feature+state

Let me get together a sample project for you.

linder
04-23-2014, 07:23 AM
Lisa,

Interesting! Yes, you are absolutely right. This change is not mentioned in the release history (and I don't know why) but there was definitely a change in the code (not directly in the Features function). The "Setup Type" dialog and the "Set Active Setup Type..." script function did not initialize the internal Features/Components variable (fixed in #4391). I am not sure if this "fix" causes your issue :-(

It would be great if you could send me a small demo so I can test it.

Thank you !!!

Friedrich

linder
04-23-2014, 07:37 AM
Ouch. The source code modification is not mentioned in the #4391 release history because I forgot to close the ticket :(

Friedrich

linder
04-23-2014, 08:31 AM
Lisa,

Project file and description received, thank you. I'll get back to you.

Friedrich

linder
04-25-2014, 05:33 AM
Lisa,

Item still in review. It's definitely caused by the internal runtime modification. The fixed variable initialization (bug in previous versions) causes this issue :(

Friedrich

linder
04-25-2014, 08:27 AM
Lisa,

We have uploaded a SB81 development build #4399:

http://www.lindersoft.com/sb8/sb81_4399_Dev.exe

Does this fix the "Set Active Setup Type" issue for you?

Thanks,
Friedrich

lsdaugherty
04-25-2014, 12:46 PM
Hi Friedrich,
I had to move my code for checking and resetting

Set Feature State(Disable: "CLS PDF Printer") [Global Reset]

to BELOW the Set Active Setup Type command, but that get it working for me. I'm guessing that due to the stuff you changed, Set Active Setup Type now resets everything to it's initial default state - which does make sense.

It's no problem as long as I make sure to make change any Feature State after the Active Setup Type has been be changed. Can I make the suggestion to add a note to the docs that calls to Set Feature State must come after Set Active Setup Type.

Thanks for reacting to this so quickly for me!
Lisa

linder
04-26-2014, 01:54 AM
Lisa,

:)

Thanks so much for your time !!! Glad it's working fine now. I'll update the documentation.

Friedrich