PDA

View Full Version : _SB_ROOT and variable paths


NewsArchive
03-13-2005, 03:39 AM
[Sunday, March 13, 2005 1:20 AM]

Once again, there's a fair chance I have no clue whatsoever about how SB5
expects me to handle some things. That said, I don't see a clear way around
an interaction between SB ROOT and the CSIDL * directories and setting up
variable based folders in the GUI.

I have some stuff that must live in CSIDL APPDATA\[PRODUCTNAME]. In File and Folders I add a folder named %USER APP DATA FOLDER% under Always Install and set that variable early in the script to CSIDL APPDATA\[PRODUCTNAME]. Simple enough.

SB wants to create SB ROOT\USER APP DATA FOLDER, but fails because
CSIDL APPDATA contains a fully qualified path (as it should). The result is
SB trying to create c:\c:\...

Three string functions later I have a proper path created, but realize that I
am not aware that the drive to which CSIDL APPDATA and SB ROOT each refer are guaranteed to match. I'm guessing that SB ROOT contains either the drive on which the OS resides, or more likely the drive for SB INSTALLDIR. In either case mixing SB ROOT and CSIDL * paths seems problematic.

In another case I have got to be doing it wrong, as this is too simple. I
have another case of a variable based folder, but this one is user selected.
It can exist on the local machine, or any device accessible to the user via
an UNC. Again, I add the folder variable to Always Install and SB creates:

:: Create Folder % SB ROOT\%USER SELECTED PATH%

So what expectations has SB5 of these paths I need to feed it? I haven't
tested the UNC case, but as best I can tell with everything else Create
Folder and Install File used via the GUI are going to blindly prepend
SB ROOT to whatever they're fed.

--
Best regards,

Mark

NewsArchive
03-13-2005, 03:39 AM
[Sunday, March 13, 2005 11:24 AM]

Mark,

Already "fixed" in our latest internal source codes. Thanks for your
report.

BTW, we have also added new functions to better support UNC. We'll try to
upload a new build #1074 tomorrow.

Thanks,
Friedrich

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

NewsArchive
03-16-2005, 10:33 AM
[Sunday, March 13, 2005 5:14 PM]

>Mark,
>
>Already "fixed" in our latest internal source codes. Thanks for your
>report.
>
>BTW, we have also added new functions to better support UNC. We'll try to
>upload a new build #1074 tomorrow.

Friedrich,

Thanks much. Can you help me understand the purpose of SB ROOT and what
determines where it points?

--
Best regards,

Mark

NewsArchive
03-16-2005, 10:34 AM
[Monday, March 14, 2005 1:13 AM]

Hi Mark,

I had asked Friedrich this question one time beforre in an email. This
is his response:
%_SB_ROOT% is the "root" of the %_SB_INSTALLDIR% variable (e.g. if
_SB_INSTALLDIR% is d:\clarion6 then %_SB_ROOT% is d:\.

Best Regards,
Geoff Spillane
Data Down Under

NewsArchive
03-16-2005, 10:34 AM
[Monday, March 14, 2005 2:24 AM]

>Hi Mark,
>
>I had asked Friedrich this question one time beforre in an email. This
>is his response:
>% SB ROOT% is the "root" of the % SB INSTALLDIR% variable (e.g. if
> SB INSTALLDIR% is d:\clarion6 then % SB ROOT% is d:\.

Thanks much, Geoff. That help me understand what it's trying to do.

--
Best regards,

Mark

NewsArchive
03-16-2005, 10:34 AM
[Monday, March 14, 2005 5:57 PM]

Mark,

What Geoff said.

There is now a new "Absolute folder path specification" checkbox on the
Folder Properties dialog. This allows us to define an "absolute" folder
path (e.g. c:\mydir\yada) or a "relative" folder path (e.g.
%_SB_ROOT%\mydir\yada) where %_SB_ROOT% is the root of %_SB_INSTALLDIR%.

And there is a new function available to "skip" the root letter. For
example, if you have %_SB_ROOT%\%MYDIR% and %MYDIR% is (for whatever reason)
set to c:\mytestdir\yada and %_SB_ROOT% is d:\ At the moment the result is
d:\c:\mytestdir\yada - you can now use the new function to skip the root
letter (or server path and share name). Result: d:\mytestdir\yada

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

NewsArchive
03-16-2005, 10:35 AM
[Monday, March 14, 2005 8:38 PM]

>Mark,
>
>What Geoff said.
>
>There is now a new "Absolute folder path specification" checkbox on the
>Folder Properties dialog. This allows us to define an "absolute" folder
>path (e.g. c:\mydir\yada) or a "relative" folder path (e.g.
>% SB ROOT%\mydir\yada) where % SB ROOT% is the root of % SB INSTALLDIR%.

That's exactly what I need to keep it in the GUI. Thanks.

>And there is a new function available to "skip" the root letter. For
>example, if you have % SB ROOT%\%MYDIR% and %MYDIR% is (for whatever reason)
>set to c:\mytestdir\yada and % SB ROOT% is d:\ At the moment the result is
>d:\c:\mytestdir\yada - you can now use the new function to skip the root
>letter (or server path and share name). Result: d:\mytestdir\yada

--
Best regards,

Mark