Page 1 of 1

Windows 7 Simplified Chinese

Posted: Tue Sep 07, 2010 1:42 pm
by agale
Hi

I have an issue with the installer when it runs on a Windows 7 simplified Chinese that it fails to detect the right language. What is weird is that on an XP that is in simplified Chinese things work fine. If I insert a message box to show the value of variable $LANGUAGE$ it shows English. However if in the installer I force variable LANGUAGE to Simplified Chinese (Chinese (Taiwan)) all text is garbage.

In order to test for this I created a very simple C++ application containing the following code and run it on the machine that InstallAware failed to detect the language:

TCHAR lang[MAX_PATH*2];
GetLocaleInfo(LOCALE_SYSTEM_DEFAULT,LOCALE_SENGLANGUAGE,lang,MAX_PATH);
wprintf(lang);

Surprisingly even the above C++ code on Simplified Chinese Windows 7 returned English. So probably InstallAware is doing this behind the scenes to detect the language. If it is I believe this is wrong and it should detect the OS language. The following code always detect the right system language settings:

TCHAR lang[MAX_PATH*2];
LANGID id = GetSystemDefaultUILanguage();
GetLocaleInfo(id,LOCALE_SENGLANGUAGE,lang,MAX_PATH);
wprintf(_T("%d %s"),id,lang);

Further investigation showed that in Windows 7 users can choose the locale for non Unicode programs in the regional settings that cause the GetLocaleInfo(LOCALE_SYSTEM_DEFAULT,LOCALE_SENGLANGUAGE,lang,MAX_PATH) call to return not the right information. Hence you need to enforce it with GetSystemDefaultUILanguage().

Can someone from InstallAware take care of this issue and launch a patch cause I am having major issues creating a multi lingual installer with InstallAware?

Regards
Aaron

Re: Windows 7 Simplified Chinese

Posted: Wed Sep 08, 2010 5:04 pm
by mills
I don't have a suitable environment to test this in, but I did verify the code you offered and notified our developers.

We may need you to test the fix.

Re: Windows 7 Simplified Chinese

Posted: Wed Sep 08, 2010 11:41 pm
by agale
Hi

Not a problem for me to test this. Send me anything and I test it.

The issue is that in Windows 7 setting locale for non unicode program influence InstallAware not to function properly.

Regards
Aaron

Re: Windows 7 Simplified Chinese

Posted: Thu Sep 09, 2010 1:13 am
by agale
Hi Mills

Regarding this issue do you have a time estimate when you would look into this? The reason is that we have a release coming up soon and we have committed to InstallAware and purchased this though this issue would hold us back. The thing is that due to this the product on Chinese simplified fails to install with the following error message:

' The folder path '???' contains an invald character.'

Regards
Aaron

Re: Windows 7 Simplified Chinese

Posted: Thu Sep 09, 2010 6:11 pm
by mills
Hmmm. I would hope your suggestion would fix this then. There's a similar post as yours:
http://installaware.com/forum/viewtopic ... 249#p21249

We haven't been able to reproduce the error on our side (following the steps in the previous post). And this issue isn't limited to Win 7 (the other saw it in XP).

The main question on trying to reproduce this on our end is whether this could be reproduced on an 'English' windows that's had its regional/language settings changed to [a unicode language] Chinese/Japanese.

Was your Windows a Chinese distribution or were the regional settings changed to Chinese?

Re: Windows 7 Simplified Chinese

Posted: Fri Sep 10, 2010 12:45 am
by agale
The problem I believe is that InstallAware according to the language of the locale it will use a different encoding to read the language. Hence if this is detected wrongly the installer would screw up.