Embedded locale transforms
Posted 26 September 2007 - 16:08
I've got an MSI with ProductLanguage property set to 1033, likewise the Languages field of the Summary Information is set to 1033. I have created a French transform (just for the dialog strings, for testing purposses) and called it 1036.mst and imbedded it into my MSI using msidb.exe. They say, all you need to do is run it and it'll compare the system locale with your embedded transforms and it'll all work - well, it doesn't.
You can call the embedded transform via command line by adding a colon into the sting:
msiexec /i "<msi_path>" transforms=:1036.mst
This DOES work.
I decided that perhaps if I added 1036 to the Languages field of the Summary Information it'd work (now "1033,1036"). This gets me one step closer, as I get an error: "Error applying transforms. Verify that the specified transform paths are valid." and the package fails to get to the Welcome dialog. Running the same command line string with this additional Language in the Summary Information generates the same error message, albeit with curiously different formatting.
So, I can run a package with an embedded transform from commandline, but as soon as I do what I thing is neccessary for the process to automate, it all fails. Clearly there is another step I need to complete before I get the desired behaviour.
Posted 26 September 2007 - 17:36
Posted 28 September 2007 - 16:28
I guess you followed the steps at http://www.installsi...dlang/index.htm
Remeber that this is undocumented and unsupported and thus may break, e.g. in msi 4.5
Posted 01 October 2007 - 15:19
It's odd that the transform can be applied via commandline when 1036 is not included in the summary information, as soon as it's added in, the package tries to automatically use the transform, and trying to do so from commandline equally fails.
Posted 02 October 2007 - 16:45