PDA

View Full Version : /CV option



NewsArchive
09-07-2007, 05:23 AM
Hi Friedrich,

I'm using the /CV option to pass the OUTPUTDIR to the compiler. To
test the contents of it I put a #msgbox at the beginning of the script
and it is showing the correct directory, i.e.
C:\Products\Builds\Utilities instead of
C:\Products\ITUtilities\Latest\ITUtilities. So it is getting the
correct value and putting it into the OUTPUTDIR compiler variable, but
the output still goes to C:\Products\ITUtilities\Latest\ITUtilities
instead of the path that I passed, C:\Products\Builds\Utilities

So it seems that the command line works, but it doesn't change the
output folder.

I've tried it with or without value in the [OUTPUTDIR] variable.

I tried this with [PRODUCTVER] also and it works fine so this is
something about the OUTPUTDIR folder. Note that I created the folder
to make sure that it was there in case it wasn't created
automatically.

Tried [EXENAME] and it has the same problems as [OUTPUTDIR]. The
correct value is passed, but it is not used, ie. the exename remains
what it is set in the script, not what is passed to the compiler.

Best regards,

Arnór Baldvinsson
Icetips Creative, Inc.
San Antonio, Texas, USA
www.icetips.com


Subscribe to information from Icetips.com:
http://www.icetips.com/subscribe.php

NewsArchive
09-07-2007, 05:26 AM
Hi Friedrich,

>I tried this with [PRODUCTVER] also and it works fine so this is
>something about the OUTPUTDIR folder. Note that I created the folder
>to make sure that it was there in case it wasn't created
>automatically.

Bit further on this.

I use [PRODUCTVER] in several places, including a text on a dialog.
It shows up correct everywhere with the /CV option, but the script is
not updated with the value. I'm not sure if that's what is supposed
to happen or not.

Example:

My Utilities build is at version 0.94.000 I pass /CV PRODUCTVER
"0.95.000" to it and the install uses 0.95.000 in the dialogs etc. and
the Version resources for the exe say 0.95.0.0 so everything is good.
However when I open the install script in SB6.5 it still says 0.94.000

I'm not sure if passing information on the command line is supposed to
update the script or just set the compiler varibles. I can see that
in most cases the value should remain static, except maybe with the
version since if you open the script and compile it from the IDE, it
would get an old version number.

Not a big deal, just wondering if it is supposed to update it or
not...

Best regards,

Arnór Baldvinsson
Icetips Creative, Inc.
San Antonio, Texas, USA
www.icetips.com


Subscribe to information from Icetips.com:
http://www.icetips.com/subscribe.php

NewsArchive
09-08-2007, 03:34 AM
Hi Arnór,

A command line compile does *not* change the script!!

Friedrich

NewsArchive
09-08-2007, 03:35 AM
Hi Friedrich,

>A command line compile does *not* change the script!!

Thanks, now I know why it didn't change;)

Best regards,

Arnór Baldvinsson
Icetips Creative, Inc.
San Antonio, Texas, USA
www.icetips.com


Subscribe to information from Icetips.com:
http://www.icetips.com/subscribe.php

NewsArchive
09-08-2007, 03:35 AM
Hi Arnór,

This is a tricky one and I have to test this in detail.

[OUTPUTDIR] and [EXENAME] are very specific variables and control the
compiler output. It works fine in "Releases" so perhaps it's just a timing
issue.

Item in review.

Thanks,
Friedrich

NewsArchive
09-08-2007, 03:36 AM
Hi Friedrich,

>[OUTPUTDIR] and [EXENAME] are very specific variables and control the
>compiler output. It works fine in "Releases" so perhaps it's just a timing
>issue.

That's how it sounds to me. I have a #msgbox as the very first thing
in the script file and there these variables reflect exactly what I
pass to them on the command line, but I think they may be initialized
and used _before_ that.

For now I will just presume the default location and if the exe and
html are not found I'll return an error or prompt for location.

Best regards,

Arnór Baldvinsson
Icetips Creative, Inc.
San Antonio, Texas, USA
www.icetips.com


Subscribe to information from Icetips.com:
http://www.icetips.com/subscribe.php

NewsArchive
09-08-2007, 03:37 AM
Hi Arnór,

>>[OUTPUTDIR] and [EXENAME] are very specific variables and control the
>>compiler output. It works fine in "Releases" so perhaps it's just a
>>timing issue.
>
> That's how it sounds to me. I have a #msgbox as the very first thing
> in the script file and there these variables reflect exactly what I
> pass to them on the command line, but I think they may be initialized
> and used _before_ that.
>
> For now I will just presume the default location and if the exe and
> html are not found I'll return an error or prompt for location.

Yes, I see a potential problematic source code line. It does not correctly
process the [OUTPUTDIR] and [EXENAME] compiler variables if the project is
compiled from the command line. The code only checks if it is a "Release"
compile. So I think that's why it works fine in Releases.

Thank you for bringing this to my attention!

Friedrich

NewsArchive
09-08-2007, 03:38 AM
Hi Friedrich,

>Thank you for bringing this to my attention!

Welcome:) If I can break it, I will<g>

Best regards,

Arnór Baldvinsson
Icetips Creative, Inc.
San Antonio, Texas, USA
www.icetips.com


Subscribe to information from Icetips.com:
http://www.icetips.com/subscribe.php

NewsArchive
09-11-2007, 02:30 AM
Hi Arnór,

>>Thank you for bringing this to my attention!
>
> Welcome:) If I can break it, I will<g>

I know that <vbg>

I think it's fixed now. This was a very tricky one!

Thanks,
Friedrich

--
Friedrich Linder
Lindersoft
www.lindersoft.com
+1.954.252.3910

"point. click. ship" - that's SetupBuilder 6.5
Create Windows Vista ready installations in minutes

-- Official Comodo Code Signing and SSL Certificate Partner