For example, from the IDE, I can sign my builds automatically from the
IDE when a build is made.
IF BDS could support this, I would merge in Vista icons, UPX them and
then code sign them.
Right now, I open the project, make sure that the build options are
appropriate, increment the version, build the app, then run a bat file
that does the Vista icon merge, UPX and sign.
Suggestions?
Lance
> Does Delphi 2006 (BDS) support Pre-build / Post-build event command
> line actions like VS2005 does?
No, but the next release of Delphi will, as it will use MSBuild as the
build engine.
--
Nick Hodges
Delphi Product Manager - CodeGear
http://blogs.codegear.com/nickhodges
Take a look at http://www.finalbuilder.com/.
Perhaps this helps you without waiting for the next BDS/CDS-Release.
> Take a look at http://www.finalbuilder.com/.
> Perhaps this helps you without waiting for the next BDS/CDS-Release.
This tool has saved me countless hours. Thoroughly recommended.
MSBuild integration won't help you if you have support older versions
of the IDE.
--
Compact Framework for Delphi 2006: http://www.jed-software.com/cf.htm
QualityCentral Windows Client: http://www.jed-software.com/qc.htm
Visual Forms IDE Add In: http://www.jed-software.com/vf.htm
How about also code signing applications / assemblies?
Granted, you could do this at the post build... but if you do, it would
be nice to use some of the macros like what VS did, so the build file
name / location isn't hard coded.
I assume this would be for VCL as well as the .NET side?
Lance
Lance
> How about also code signing applications / assemblies?
What about it? Not sure what you are asking about here.
> Granted, you could do this at the post build... but if you do, it
> would be nice to use some of the macros like what VS did, so the
> build file name / location isn't hard coded.
If by "Macros" you mean MSBuild Actions, then since we use MSBuild,
you'll be able to use any and all MS Actions in your build.
> I assume this would be for VCL as well as the .NET side?
Yes, even C++, something MS wasn't able to do.
> Take a look at http://www.finalbuilder.com/.
I can't say enough good things about FinalBuilder.
> Bernhard Geyer wrote:
>
> > Take a look at http://www.finalbuilder.com/.
>
> I can't say enough good things about FinalBuilder.
Yes, it really is an excellent product.
Cheers
Dean
Hmmm... Lack of vocabulary skills... let me make a note... <G>
David Erbas-White
While petty, it does provide one less step and a more direct step when
you do a BUILD ALL to essentially make the EXE and have it signed for
"security" purposes.
Again.... Doing a call to sign the build in a post-build BAT file or
command would be fine.
In terms of macros.. I think what I mean is VS2005 provided a list of
constants, much like Installshield, which contain things such as the
path to the build path... the name of the build... the Path+Build
name.. etc etc. I.E. ($BUILDEXE).
So I was able to do something in the post build, such as CODESIGN.EXE
http://timeurl ($BUILDEXE)
(Not at computer to paste real call). Again.. I'm not sure if this was
part of MSBuild or if its IDE related. Regardless... it would be nice
if this was a feature.
I noticed it can turn on / off a VM.
I have Delphi 2006 in an XP SP2 VM that is nothing but Delphi and
components. Then actually read and build to a mapped drive to my real
computer.
Likewise, I have InstallShield in its own VM.
Can I put FinalBuilder on the host machine and then control the VM's and
inside of them to build the EXE and make IS builds?
Or would I need to make a VM that would have Delphi, IS and FinalBuilder
all on the same VM?
(Main reason for VM'ing is to deal with snapshots and better backup my
development / building without worrying about reinstalling OS issues and
such)
I'm open to some suggestions regarding how you maybe utilize this?
Lance
>
> So I was able to do something in the post build, such as CODESIGN.EXE
> http://timeurl ($BUILDEXE)
Yes, exactly. That's what the post-build events in MS Build do.
Have you considered automating your build with NAnt, Ant or MSBuild? Do
you only need the icon merge, UPX, and sign for release builds. If so,
then you can do debug builds and debugging from the IDE. Use a NAnt or
MSBuild script for your releases. This would also open up the door for
tools like CruiseControl.
I have not used FinalBuilder. However, it sounds like it may be overkill
for what you need. But then again, if you are a visual GUI kind of
person, then FinalBuilder might be more to your liking.
H^2
Main thing is the distribution. So far I like what I see in
FinalBuilder. GUI is nice, but not mandatory.
I'll take a look at your suggestions. I only need, really, for the
release process. I use Installshield and would need to upload as well,
which is also why FinalBuilder looks attractive.
Lance
> This is more for the Final Builder forum.. But for those that use
> it...
>
> I noticed it can turn on / off a VM.
>
> I have Delphi 2006 in an XP SP2 VM that is nothing but Delphi and
> components. Then actually read and build to a mapped drive to my
> real computer.
>
> Likewise, I have InstallShield in its own VM.
>
> Can I put FinalBuilder on the host machine and then control the VM's
> and inside of them to build the EXE and make IS builds?
>
> Or would I need to make a VM that would have Delphi, IS and
> FinalBuilder all on the same VM?
>
> (Main reason for VM'ing is to deal with snapshots and better backup
> my development / building without worrying about reinstalling OS
> issues and such)
>
> I'm open to some suggestions regarding how you maybe utilize this?
>
> Lance
AFAIK, FinalBuilder's support of Virtual Machines is pretty much
limited to starting/stopping/resetting them. You would want to have to
FinalBuilder installed in the same VM session as your build
environment. If you had InstallShield in the same VM, then you could
FinalBuilder drive the entire build process from source control to
install building.
--
Chris Miller
Sr. Software Engineer
VersaTrans Solutions
http://anotherlab.blogspot.com/
> Have you considered automating your build with NAnt, Ant or MSBuild?
There's also Want, a Delphi-specific version of Ant.
--
Craig Stuntz [TeamB] · Vertex Systems Corp. · Columbus, OH
Delphi/InterBase Weblog : http://blogs.teamb.com/craigstuntz
Everything You Need to Know About InterBase Character Sets:
http://blogs.teamb.com/craigstuntz/articles/403.aspx
FinalBuilder has support for creating snapshots and reverting to snapshots
on VMWare Workstation 5.5. VMWare Server doesn't have any facility for this
from it's com api at this stage, however they have said it will be
implemented in a future release. We will also be adding support for VMWare
Workstation 6.0 soon (It has a new much more capable api).
--
Regards
Vincent Parrett
VSoft Technologies Pty Ltd
http://www.finalbuilder.com
Hi Lance,
In general you would create a VM that has everything you need to complete
the build process. So that would include FinalBuilder, Delphi, Installshield
etc. FinalBuilder would then automate the entire build process. This is how
we build FinalBuilder itself, in a virtual machine. You could also start and
stop the VM's from FinalBuilder and use the pstools actions (psexec) to
start processes on the virtual machines, however we found that it is error
prone due to the vagaries of windows/vmware networking when machines are
started (network operations sometimes fail if run too soon after the machine
has started).
HTH
I assume by macros (here) he means environment variable expansion.
You should use it everywhere in the IDE !!!
I haven't checked if it works everywhere in BDS 2006, but in BCB it was
a mess, because for many files I couldn't use my own environment
variables and for resources the IDE hard coded a path in the project
file, which I even wasn't able to change from the IDE.
>> I assume this would be for VCL as well as the .NET side?
>
> Yes, even C++, something MS wasn't able to do.
Could you be more specific, what wasn't or isn't possible ?
As I would interpret it, it's just calling an external application
during a build event. Why should that be language agnostic ?????
Andre
Ok. I see. You meant that MSBuild wasn't used for C++ projects, not as I
interpreted it build events where restricted to .NET assemblies.
> [...]
Andre
> Could you be more specific, what wasn't or isn't possible ?
VS.NET doesn't use MSBuild for C++.
I've been taking a look based on the positive comments here and I agree
you have a great product.
I ended up doing what you suggested and put everything on a VM. I've
been playing with VM6 on a different machine and agree it will be nice!
The only comment I have is that UPX takes an abnormal time compressing
the app compared to running it via a bat file on the real computer. My
BAT file calls UPX with only the --best flag.
I had to create a VBS script and call as a DOS command to use Automation
in Installshield 12 to change the version number of the project file to
match what FinalBuilder project was processing. I couldn't seem to
successfully do the VBS inside as a script action.
I'm very impressed with what I see and thanks for the recommends Nick
and all!
Lance
True, as I corrected myself in the second post - just misunderstood your
post.
Anyways, regarding Highlanders C++ MSBuild support: Well done.
I appreciate this as a very valuable enhancement.
Andre
> Anyways, regarding Highlanders C++ MSBuild support: Well done.
> I appreciate this as a very valuable enhancement.
I'm very pleased with how it is shaping up. I'm glad Nick mentioned
it so that I could blog about it.
--
-David Dean
CodeGear C++ QA Engineer
<http://blogs.codegear.com/ddean/>
Thanks!
> I ended up doing what you suggested and put everything on a VM. I've been
> playing with VM6 on a different machine and agree it will be nice!
>
> The only comment I have is that UPX takes an abnormal time compressing the
> app compared to running it via a bat file on the real computer. My BAT
> file calls UPX with only the --best flag.
Programs that are memory intensive (UPX is) will be slower on virtual
machines. There are some ways around this, by allowing VMWare to preallocate
the memory it needs, but I would only do this if you have ram to spare (at
least 4G).
> I had to create a VBS script and call as a DOS command to use Automation
> in Installshield 12 to change the version number of the project file to
> match what FinalBuilder project was processing. I couldn't seem to
> successfully do the VBS inside as a script action.
Hmmm.. send the script to support at finalbuilder dot com and we'll see
what's going on there.
>
> Anyways, regarding Highlanders C++ MSBuild support: Well done.
> I appreciate this as a very valuable enhancement.
Great --
Yes, Want is very good. I use it all the time at my job, since I also
have to recompile older projects. Quit handy without installing old
component versions into the IDE all the time.
>
>--
>Craig Stuntz [TeamB] · Vertex Systems Corp. · Columbus, OH
> Delphi/InterBase Weblog : http://blogs.teamb.com/craigstuntz
>Everything You Need to Know About InterBase Character Sets:
> http://blogs.teamb.com/craigstuntz/articles/403.aspx
>
Robin
-------------------------------------
http://projectvalley.com
--- posted by geoForum on http://delphi.newswhat.com