I would use my PETool.exe (available at http://wizou.fr) to tweak the
after NSIS generation. Seems much easier than the big script on
but VIFileVersion seems a good idea and your doc (and fallback) is fine.
I have no opinion on the question of input validation.
Le 28/07/2011 23:57, Anders a écrit :
> I'm adding a VIFileVersion command because of
> Having ProductVersion != FileVersion in VS_FIXEDFILEINFO is probably
> pretty rare but the workaround you need to use without it is horrible.
> My initial rewrite of the docs looks like
> http://jsbin.com/icewuh/2/edit#preview The reference to
> VS_FIXEDFILEINFO might be a bit obscure but it does reflect what the
> attribute actually does (The FileVersion string does not have to match
> the FileVersion in VS_FIXEDFILEINFO and the WinXP version properties
> tab will display both (VS_FIXEDFILEINFO at the top and the string in
> the list of strings)). The old docs had a major docbug since it is the
> file version and not the product version that is displayed at the top
> of the version tab dialog!
> Another quirk is that makensis does not seem to echo any information
> when the VIProductVersion command is used and it does not validate the
> input in script.cpp like most commands, it does it during
> CEXEBuild::write_output. Why? I don't know but I did not want to
> change it since it could possibly affect scripts that use !delfile to
> do cleanup etc since the invalid input error is delayed. VIFileVersion
> does not echo any information either but it does validate the input
> right away but that is ok since the command is new. Should I keep the
> old delayed VIProductVersion input validation for compatibility or
> just fail in script.cpp when the command is executed with a bad param?
> Also, if the script does not contain a VIFileVersion command it falls
> back to the old behavior with FileVersion == ProductVersion.
> What do you guys think?
> Got Input? Slashdot Needs You.
> Take our quick survey online. Come on, we don't ask for help often.
> Plus, you'll get a chance to win $100 to spend on ThinkGeek.
> Nsis-devel mailing list