Home Forums General XMetaL Discussion Customizing the XMetaL 6.0 installer Reply To: Customizing the XMetaL 6.0 installer


Reply to: Customizing the XMetaL 6.0 installer

In this case, I'm creating an installer using NSIS that will copy a bunch of files into the XMetaL install directory (under Assets, Rules, a random dll, etc). So it adds or updates the customizations to an existing installation. I want the installer to figure out where XMetaL is installed and put the new stuff in the right place. I've figured out that all the information I need is under HKLMSOFTWARESoftQuad. HKLMSOFTWARESoftQuadVersions seems to tell me what version is installed (i.e. 4.6.11). I take the first three characters of that and then find the information about that version: HKLMSOFTWARESoftQuadXMetaL #.#Path etc. I'd like to have one installer that works with 4.6 and will continue to work with 6.0.

I'm wondering now what to expect as far as the content of Versions if more than one version is installed. A semi-colon delimited list? Newest first?

One annoying thing (as much about NSIS as XMetaL) is that the path for 4.6 was stored as:

C:Program FilesBlast RadiusXMetaL 4.6Author

But for 6.0 it has a trailing backslash:

C:Program FilesXMetaL 6.0Author

I concatenate this path with “Assets” in my script. Unfortunately, the NSIS CopyFiles command seems not to understand C:Program FilesXMetaL 6.0Author\Assets as a target and the string manipulation features are quite limited.

My suggestion would be to document the XMetaL registry information in your customization doc…and be consistent between releases 🙂