Re: [WiX-users] Unicode. Unicode?
Rob Mensching wrote: > One thing I remember the MSI team mentioning was that certain system > dialogs the Windows Installer puts up will show up with boxes because > the Windows Installer does not understand the UTF-8 codepage. Basic UI > maybe... I forget the specific dialogs (if they even said)? The only issue we've had reported is that the uninstall dialog comes out in the wrong font (which is really bizarre since the install font is correct). If it all comes unstuck I've got a couple of custom actions on the back burner that can be rolled out fairly quicky. Tony - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Unicode. Unicode?
One thing I remember the MSI team mentioning was that certain system dialogs the Windows Installer puts up will show up with boxes because the Windows Installer does not understand the UTF-8 codepage. Basic UI maybe... I forget the specific dialogs (if they even said)? Tony Hoyle wrote: > DEXK JAHN, GXbor wrote: > >> With 65001, I could successfully create an installer that does >> display Unicode characters not covered by any of the other, >> officially supported codepages. However, I can only test it on a US >> XP. I'm worried about other, localized versions of Windows, most >> notably the CJK version because somebody has just mentioned that >> 65001 would not function there. Consequently, if anybody builds an >> MSI with that localized WXL, it will display differently depending on >> the operating system of the user. And this is a Bad Thing. >> > > I've done some testing on different localised windows with a 65001 MSI > (Chinese and Arabic), and can find no compatibility issues at all (with > an XP SP2 out of the box install). > > I can't vouch for Windows 2000.. and I can bet it doesn't Work on > Win9x/Me.. but for me those aren't currently a priority. > > There may be issues that affect features I haven't used.. codepage 65001 > isn't 'officially' suported in any way, so YMMV of course. > > Tony > > > - > SF.Net email is sponsored by: > Check out the new SourceForge.net Marketplace. > It's the best place to buy or sell services > for just about anything Open Source. > http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace > ___ > WiX-users mailing list > WiX-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wix-users > > - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Unicode. Unicode?
DEXK JAHN, GXbor wrote: > With 65001, I could successfully create an installer that does > display Unicode characters not covered by any of the other, > officially supported codepages. However, I can only test it on a US > XP. I'm worried about other, localized versions of Windows, most > notably the CJK version because somebody has just mentioned that > 65001 would not function there. Consequently, if anybody builds an > MSI with that localized WXL, it will display differently depending on > the operating system of the user. And this is a Bad Thing. I've done some testing on different localised windows with a 65001 MSI (Chinese and Arabic), and can find no compatibility issues at all (with an XP SP2 out of the box install). I can't vouch for Windows 2000.. and I can bet it doesn't Work on Win9x/Me.. but for me those aren't currently a priority. There may be issues that affect features I haven't used.. codepage 65001 isn't 'officially' suported in any way, so YMMV of course. Tony - SF.Net email is sponsored by: Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users
Re: [WiX-users] Unicode. Unicode?
It seems to be very difficult to find any information about what is actually supported. My belief is that the codepage you use has to map exactly onto one of the defined ANSI font ranges in Windows. See the 'code page bitfields' list in the FONTSIGNATURE structure for what GDI understands, at http://msdn2.microsoft.com/en-us/library/ms776441.aspx. Summary if this is correct: supported codepages are 1252, 1250, 1251, 1253, 1254, 1255, 1256, 1257, 1258, 874, 932, 936, 949, 950, 1361, and IBM/OEM codepages 869, 866, 865, 864, 863, 862, 861, 860, 857, 855, 852, 775, 737, 708, 850 and 437. I'm not even sure that the OEM codepages would work. Summary of my thinking: Windows Installer uses the same codepage to translate everything as it does to display. To display, it has to create fonts using one xxx_CHARSET value as defined in the LOGFONT structure for ANSI compatibility (recall that Windows Installer 1.0 was designed primarily for installing Office 2000 on Windows 9X). Only codepages which map exactly onto one xxx_CHARSET value will work correctly. Therefore I would expect that there's a call to TranslateCharsetInfo with TCI_SRCCODEPAGE, fairly early on in execution, to determine what the correct CHARSET value is. If it fails - which it will if not one of the specified values above - Windows Installer will fail to run the package. By its nature UTF-8 cannot have an associated ANSI charset. Because of this you *cannot* localize anything that is installed in the package. Only localize the strings that are displayed in the UI. If you're trying to display strings in the installation UI in an unsupported language/character set, you'll have to write some external UI. If you want to localize your application I would strongly recommend using the satellite DLL model, where you have separate DLLs containing your localized resources. .NET Framework supports satellite DLLs implicitly by probing in folders named after cultures (e.g. en-US, de-DE) before looking in language-neutral folders. See "Creating Satellite Assemblies" at http://msdn2.microsoft.com/en-us/library/21a15yht.aspx and the System.Resources.ResourceManager class. MFC supports loading resources from a different DLL instance than the application or DLL. See Tech Note 57 for MFC 6.0 at http://msdn2.microsoft.com/en-us/library/x6h91d9w.aspx or "Localized Resources in MFC Applications: Satellite DLLs" at http://msdn2.microsoft.com/en-us/library/8fkteez0.aspx for MFC 7.0 and later. ATL also supports setting a resource instance: see SetResourceInstance (ATL 7.0 and later) or set the m_hInstResource for ATL 3.0 and earlier. Finally Windows Vista has added a mechanism they're calling MUI Technology, for which see "Multilingual User Interface" in the SDK at http://msdn2.microsoft.com/en-us/library/ms776201.aspx. None of this obviously helps if you have already authored your application relying on being able to install localized strings in the installation package. -- Mike Dimmick -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of DEÃK JAHN, Gábor Sent: 14 December 2007 01:36 To: WiX-users Subject: [WiX-users] Unicode. Unicode? Hello, did anybody find a way to make codepage 65001 work? I don't need CJK but a couple of Latin 3 (ISO-8859-3) characters, sadly not supported by any of the Windows codepages. Building the MSI seems to go all right but it refuses to run with an error: "This installation package could not be opened. Contact the application vendor to verify that this is a valid Windows Installer package." - SF.Net email is sponsored by: Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace ___ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users