Archive: NEW FEATURE: Stored File Versions


Hi all. I don't know if anyone wants this feature that I have coded for NSIS, nor do I know exactly the proper channel of getting this to Justin, but here it is:

This feature stores the file versioning information of the .DLL and .EXE files that you add to your installation so that you no longer have to extract a file to a temporary directory first before using the CompareDLLVersions command.

The feature is added if NSIS_SUPPORT_STORED_FILE_VERSIONS is defined in the config.h file, and it is accessed by using the /s switch with the CompareDLLVersions function.

If you added a file "c:\myfolder\test.dll" and you wanted to compare it's version to the user's "$SYSDIR\test.dll" file, you would use the following syntax:

CompareDLLVersions /s "test.dll" "$SYSDIR\test.dll" label1 label2

Justin, if you want to add my code for this to NSIS then please tell me how I should give it to you. Thanks


Just email me (justin@nullsoft.com) and attach the changed files, or what not.. :)

-Justin


by how much does it increase the exe size ?


The exe is basically only increased by the size of the compressed version data; in other words, each version stored contains the name of the file, and two DWORD values (32-bit unsigned integers).

I submitted the code to Justin, and he replied saying he will probably have this same feature in the next version of NSIS, expcept he will make it simpler by encoding the versioning info into each CompareDLLVersions function rather than a separate table of versions like I have now. That will be even better :)


Cool. All I can say is : will it be ready by Saturday? Because I'll be releasing a new version of my app then. (TibEd, http://www.tibed.net). Maybe it can be added to the programs using NSIS too?

Poll: Does anyone actually use my patcher?


No I don't. Where can I get it from?


I will definately use your patcher when I need it. I just don't need it right now. I'd really like to see a GUI for it soon though.


You can get the first version at:

http://www.tibed.net/vpatch

(I thought I made a site... guess I forgot to upload it :)

A new version will be release soon, because I made some major speed improvements which aren't in this version yet. And Edgewize's smaller runtime isn't in yet either. Tthis new runtime means only 4 Kb overhead (!)