We are using the Qt Installer Framework to create our product installers. Most things are running quite smoothly, but there are still some unresolved issues.
Every time we are creating a new product version, which happens quite frequently, we have to update the content of the <Version>
Tag inside the package.xml
. But we also need to change the name of the link created by the installer in the installscript.qs
, such that the client can distinguish among two parallel installed versions of the program.
E.g. here a link like MyApplication-2.1
should appear inside the startmenu after installation.
Component.prototype.createOperations = function()
{
try {
// call the base create operations function
component.createOperations();
component.addOperation("CreateShortcut", "@TargetDir@/bin/MyApplication-2.1-vc14.exe", "@StartMenuDir@/MyApplication-2.1.lnk");
} catch (e) {
print(e);
}
}
Unfortunately, one cannot write @ProductVersion@
or @Version@
, instead of 2.1
, referring to the content of the <Version>
Tag of the package.xml
. Instead @ProductVersion@
and also @Version@
are seemingly referring to the content of the <Version>
tag inside the config.xml
, which is not the desired behavior.
My problem is now, that I need to synchronize every time the versions numbers, which seems to be quite error-prone. Are there some workarounds?