When i install software like VLC that use NSIS for the Windows installer when i start the installer i get a message like...
**Please wait while Setup is loading...
unpacking data: 18%**
I would like this message to be translateable so it shows up in the same language as the systems default.
So if Windows is using danish, i would like that message to be in danish.
http://forums.winamp.com/showpost.php?p=2738322&postcount=16
Maybe that could be changed?
Like when making the installer those couple of strings could be extracted from the language files so they are available before unpacking the installer content.
You don't understand, that dialog is shown before any language data is loaded. It's for the crc check so that it shows it's progress. If the crc check fails, the error message is also in English. Once the crc check passes, then it loads the languages in and uses those because the installer now knows that nothing is corrupted.
You can bypass the crc check, but that's not recommended because of security reasons.
I think i understand.
If you took the few strings needed for the unpacking message in each language so they are available without having to unpack anything, then you would be able to show the unpacking message in other languages.
If you can have the "Please wait while Setup is loading..." message in english, before unpacking, it should be possible to have it in into languages.
I understand your desire to have this dialog translated, but it would probably contradict one of NSIS core concepts: small overhead. Negligible in days where gigabytes of RAM and multicore processors? Maybe, but personally I like it to stay this way.
Apart from that, I'd assume that the vast majority of users will never even see the dialog, it usually just shows for very large installers. One way to avoid the dialog altogether is probably keeping the executable small by building a multi-volume installer.
I've run experiments with big installers before (7GB approx), and even with a separate file I'm still crc checking it, and this takes about two minutes. If I didn't crc check the data, then yeah the installer would load up straight away, but this would open up a security hole bigger than a truck can drive through. I could implement a threading model that does the crc check in the background, but there isn't much point because the install would still have to wait for it to finish before starting. And doing the crc check at the start of the instfiles page doesn't work either, because if the crc check fails, they can't install, and that is worse than failing at the start of the installer.
Personally I would leave the exehead as it is, there is no point adding the same set of strings for different languages. If we did, we would probably only do the main ones like Mandarin, Spanish, and French, and maybe German and Russian.