PDA

View Full Version : Clarion detection



NewsArchive
06-11-2005, 08:56 AM
Hi,

I am using "Clarion select dialog" (with radio buttons) and --- Detect
Clarion Versions.sbi - Include file for SetupBuilder 5.0 script.

This script is a common for different SB5 project.

One of my project need to use just c55 and c6, the other - c5, c55 and c6.

I can comment line in the script for first project (to eliminate c5) BUT for
the second project I should remember Uncomment line again etc. I have more
then one projects with the different Clarions combination.

So the question is - how I can do it correct and universal??

May be I can hide/disable runtime some Radio buttons on the "Clarion select
dialog" screen OR .... ????


--
Best regards,
Ingasoftplus

NewsArchive
06-11-2005, 08:56 AM
I'm sure Friedrich will have a more elegant answer.
But one thing you can do to jog your memory is to use the #msgbox script
item to remind yourself (the one in the Compiler Directive section, not the
User Interface message box item.)

Jane

NewsArchive
06-11-2005, 08:56 AM
Hi Jane,
> I'm sure Friedrich will have a more elegant answer.
I hope so!!

> But one thing you can do to jog your memory is to use the #msgbox script
> item to remind yourself (the one in the Compiler Directive section, not
the
> User Interface message box item.)
Thanks!

I have tried (Clarion Environment Detection) dialog and it seems what I
need. But now I have another problem.

Function
Set Variable %POS2% to InStr(1, %_SB_RETURN%, "6.1")

set %POS2% to 0 !!
but %_SB_RETURN%=Clarion 6.1
and message shows it!!

Don't understand where I am wrong... Does InStr function works?

NewsArchive
06-11-2005, 08:56 AM
Gennadi,

Just checked this and InStr works fine. Please make sure you do not call
"Message Box" or "Call DLL" before using your InStr function with
%_SB_RETURN% because these two functions change the value of %_SB_RETURN%.

Does this help?

Friedrich

--
Friedrich Linder
CEO, Lindersoft
www.lindersoft.com
1.954.252.3910

"point. click. ship" - that's SetupBuilder 5

NewsArchive
06-11-2005, 08:57 AM
Perfect Jane! This is one solution and I am using in all of our projects to
remind myself ("Did you really update the web update version number?")

What you can also do to automate this is the #ifdef conditional-directive.
For example, you have to support C55 and C60. Do the following:

#def $C55_C60$ = 1
#def $C5_C55_C60$ = 0

Then in your Wizard dialog definition(s) code create two Clarion Environment
Detection Dialogs. The first dialog detects C55 and C60 and the second one
detects C5, C55, and C60 (of course, the compiler includes only one dialog
here):

! The next dialog detects C55 and C60
#ifdef $C55_C60$ Equals "1" Then
Define Wizard Dialog "#5" (Clarion Environment Detection)
#end

! The next dialog detects C5, C55, and C60
#ifdef $C5_C55_C60$ Equals "1" Then
Define Wizard Dialog "#5" (Clarion Environment Detection)

To support C5, C55 and C60 you only have to change the def values:

#def $C55_C60$ = 0
#def $C5_C55_C60$ = 1

HTH,

--
Friedrich Linder
CEO, Lindersoft
www.lindersoft.com
1.954.252.3910

"point. click. ship" - that's SetupBuilder 5