Why won't SKU management work here?
In my experience, its best to use one program (.app, .sb7) etc) to be sure
that you don't forget one.
I need 4 different setup's on one of my programs - Two different data dll's,
and a .exe and a .msi for each.
In comes SKU management.
Adding 4 values to a new variable [TYPECOMPILE] with 4 values:
Single
Multi
Single_MSI
Multi_Msi
When I select Single_MSI, I want to set the outputpath and the .exe name:
#ifcompvar [TYPECOMPILE] Equals (Ignore Case) "Single_MSI" Then
#set compiler variable [OUTPUTDIR] = "K:\Stamint\Filer til inst\Output\SQL\"
#set compiler variable [EXENAME] = "Setup_Single_To_MSI"
#set compiler variable [APPTITLE] = "Setup_Single_To_MSI"
#msgbox "[OUTPUTDIR]
[EXENAME]
[APPTITLE]" [OK/Cancel]
#end
When I look at the #msgbox, the values are correct, but the end result is
placed as described in the original setup:
K:\Stamint\Filer til
inst\Scripts\MSSQL\Stamintsql_Singledb\stamkortSQL _Singledb_
[PRODUCTVER].exe
What am I doing wring?
Just cannot figure it out - Used quite a bit of the week-end on it.
Best regards
Edvard Korsbęk
2 Attachment(s)
Re: Why won't SKU management work here?
Hi Edvard,
[OUTPUTDIR] and [EXENAME] are special cases. The values are set before the
script is processed. So you can't directly set the value for [OUTPUTDIR]
and [EXENAME] in the script.
Please try the following "workaround". Set the Output Directory in the
General Properties to [MY_OUTPUTDIR] and the Executable Name to
[MY_EXENAME].
Then, in the script, use #set compiler variable to set the [MY_OUTPUTDIR] to
"K:\Stamint\Filer til inst\Output\SQL\" and [MY_EXENAME] to
"Setup_Single_To_MSI"
Does this work?
Friedrich
Re: Why won't SKU management work here?
Fatal error compiler error [2] [3] - Cannot create:
This was not the solution unfortunately.
Edvard Korsbęk
Re: Why won't SKU management work here?
I changeed the Outputdir to [MY_OUTPUTDIR]
When I tried to change it, the program GPF'ed
On reopening, I was able to change it back.
Edvard Korsbęk
1 Attachment(s)
Re: Why won't SKU management work here?
Edvard,
> I changeed the Outputdir to [MY_OUTPUTDIR]
> When I tried to change it, the program GPF'ed
> On reopening, I was able to change it back.
The attached project works fine here.
It creates "Setup_Single_To_MSI" in "K:\Stamint\Filer til inst\Output\SQL\"
Tested on XP and Win7.
Friedrich
1 Attachment(s)
Re: Why won't SKU management work here?
I forgot the .exe extension in the previous project. The attached one will
create "Setup_Single_To_MSI.exe" in "K:\Stamint\Filer til inst\Output\SQL\"
if you select the "Single_MSI" SKU.
Friedrich
Re: Why won't SKU management work here?
Stop! There is definitely something going wrong. I have added another
#ifcompvar statement for the "Single" SKU and the OUPUTDIR is not correct.
I have opened a ticket so we can fix this in the next build. Item in
review.
Thanks,
Friedrich
Re: Why won't SKU management work here?
I go to Luxor and Sharm Al Sheik on Sunday...
Come back 28. june...
So you have PLENTY of time to fix it!
Enjoy!
Edvard
Re: Why won't SKU management work here?
Edvard,
> I go to Luxor and Sharm Al Sheik on Sunday...
> Come back 28. june...
First of all, please have a great time Luxor and Sharm Al Sheik!!
>
> So you have PLENTY of time to fix it!
>
Okay, we checked the compiler source codes to find out what happens.
Unfortunately, it is impossible to set the [OUTPUTDIR] from the script in a
conditional statement scenario.
The output directory is set *before* the script is compiled. [EXENAME] can
be set from the script.
We'll add the above to the documentation.
So the only solution to this limitation is to use a "#copy file(s)" compiler
directive with the "Process after script compilation" and "Move File"
options enabled to move the generated setup to its final output location.
--
Friedrich Linder
Lindersoft
www.lindersoft.com
+1.954.252.3910
SetupBuilder is Windows 7 installation -- "point. click. ship"
-- Official Comodo Code Signing and SSL Certificate Partner
Re: Why won't SKU management work here?
> So the only solution to this limitation is to use a "#copy file(s)"
> compiler directive with the "Process after script compilation" and "Move
> File" options enabled to move the generated setup to its final output
> location.
Similar to this:
http://www.lindersoft.com/forums/sho...9882#post39882
Friedrich