I'm not a Klingon ( )
Shawn Steele's thoughts about Windows and .Net Framework globalization APIs
Best Way to Make Your Own Encoding
Martin recently asked what the best way to roll his own encoding in .Net 2.0, in particular can you...
Author: Shawn Steele (MSFT) Date: 09/29/2006
List of "ANSI" code pages used by Windows.
These are the "ANSI" code pages that could be used by CP_ACP. Other code pages should not appear as...
Author: Shawn Steele (MSFT) Date: 09/29/2006
RegionInfo objects are sensitive to a specific culture.
You can use a RegionInfo() object with a region name in the constructor, like "US", however that...
Author: Shawn Steele (MSFT) Date: 09/25/2006
VBScript's SetLocale doesn't know about new Vista locales.
I just discovered that VBScript has a SetLocale() function that apparently is backed by a static...
Author: Shawn Steele (MSFT) Date: 09/15/2006
How do I get localization in JScript (JavaScript) in IE7?
I ran into an interesting problem with a Vista sidebar calendar gadget. It seems that it is not...
Author: Shawn Steele (MSFT) Date: 09/05/2006
Does your web site die when it sees unexpected languages?
Recently I've seen a spate of bugs involving client-server web applications related to the user...
Author: Shawn Steele (MSFT) Date: 09/01/2006
Does "Everyone" Use IDN?
Recently it came to my attention that arbitrary implementation of IDN can break existing...
Author: Shawn Steele (MSFT) Date: 08/25/2006
MSDN Wiki is kind of cool.
MSDN has a Wiki at https://msdnwiki.microsoft.com that lets you add content to VS2005 documentation...
Author: Shawn Steele (MSFT) Date: 08/07/2006
How's the CultureAndRegionInfoBuilder (CARIB) do that?
The Microsoft Locale Builder tool is great for building custom locales. In fact it seems to even do...
Author: Shawn Steele (MSFT) Date: 08/07/2006
Custom Locale and Custom Culture Limitations and Things That Work.
Some people have used custom locales/custom cultures successfully and others are finding scenarios...
Author: Shawn Steele (MSFT) Date: 07/25/2006
Encoding.GetEncodings() has a couple "duplicate" names
The Microsoft.Net v2.0 Encoding.GetEncodings() method returns a complete list of supported...
Author: Shawn Steele (MSFT) Date: 07/18/2006
Oddities of LOCALE_SGROUPING, NumberGroupSizes and NUMBERFMT
Many people (such as myself) get confused when trying to figure out the correlation between the...
Author: Shawn Steele (MSFT) Date: 07/17/2006
Pseudo Locales in Windows Vista Beta 2
What's a pseudo locale? Pseudo-Locales are an aid to pseudo localization testing. MSDN has an...
Author: Shawn Steele (MSFT) Date: 06/27/2006
Calendar Assumptions: Why does Windows (or .Net) have 13 month names?
Sometimes people have wondered why DateTimeFormatInfo.MonthNames returns an array of 13 months, or...
Author: Shawn Steele (MSFT) Date: 06/26/2006
What's with Encoding.GetMaxByteCount() and Encoding.GetMaxCharCount()? Part 2
A little over a year ago I wrote What's with Encoding.GetMaxByteCount() and...
Author: Shawn Steele (MSFT) Date: 06/21/2006
Custom cultures & resources; BCL Team Blog; also ResourceManager Video
Recently I've had some questions about resource loading/fallback in .Net and how it works. Brian...
Author: Shawn Steele (MSFT) Date: 06/21/2006
I changed an earlier post
I don't normally change existing posts, but I don't want to be misleading. With the change of...
Author: Shawn Steele (MSFT) Date: 06/20/2006
Change to Unicode Encoding for Unicode 5.0 conformance
The behavior for UTF8Encoding, UnicodeEncoding and UTF32Encoding has changed in Windows Vista to...
Author: Shawn Steele (MSFT) Date: 06/16/2006
Internet Explorer has more explicit language names in Windows Vista
In Windows XP, Internet Explorer only provided partial tags for some languages. French (France) was...
Author: Shawn Steele (MSFT) Date: 06/03/2006
June 2006 MSDN, CLR Inside Out
I've been busy for a bit, so I've been lax on the blogs, however I'll probably blog about a couple...
Author: Shawn Steele (MSFT) Date: 05/24/2006
Custom Locale Builder Tool Beta Now Available!
[NOTE: 31 July 2007, the tool is available again at its new URL:...
Author: Shawn Steele (MSFT) Date: 05/24/2006
Cheating to Install Custom Cultures - Updated 20 June 2006
Warning: This technique will make it hard for an installer build by the Microsoft Locale Builder...
Author: Shawn Steele (MSFT) Date: 04/02/2006
More than one culture/locale can have the same name.
More than one culture can have the same "name", but there are a lot of names to choose from....
Author: Shawn Steele (MSFT) Date: 03/21/2006
Windows Vista Microsoft Locale Builder Tool
We're working on a tool, the Microsoft Locale Builder, for Windows Vista to help users create their...
Author: Shawn Steele (MSFT) Date: 02/20/2006
Klingon in pIqaD Windows Vista Custom Locale
[Updated 11 Aug 2006, changed tlh-pIqaD-US names to reflect IETF standard] Cool, they let us post...
Author: Shawn Steele (MSFT) Date: 02/17/2006
ISO 8601 Week of Year format in Microsoft .Net
Several people have noticed that Calendar.GetWeekOfYear() is almost like the ISO 8601 week when...
Author: Shawn Steele (MSFT) Date: 01/24/2006
Custom Time Zones in Windows
Someone asked about adding the "Olson" database of timezones to Windows, and I learned about...
Author: Shawn Steele (MSFT) Date: 01/20/2006
IDN Mitigation API dll needs to be explicitly linked
Since we (I) didn't provide a .lib file for the "Microsoft Internationalized Domain Name (IDN)...
Author: Shawn Steele (MSFT) Date: 01/05/2006
What's my Encoding Called?
There is a bit of confusion about the System.Text.Encoding names, primarily "Which name do I use for...
Author: Shawn Steele (MSFT) Date: 12/28/2005
What Version of Unicode Does X Support?
Michael answers this question in his blog at...
Author: Shawn Steele (MSFT) Date: 12/27/2005
Custom Locales vs Custom Cultures in Windows Vista / .Net Framework
When a Custom Culture is created in .Net it is used by Vista as well as a Custom Locale. There are...
Author: Shawn Steele (MSFT) Date: 12/08/2005
Custom and Synthetic (Windows ELK) RegionInfos in .Net 2.0
When we ship the Microsoft .Net Framework, the culture data associated with that version is fixed....
Author: Shawn Steele (MSFT) Date: 12/06/2005
Creating a Custom Culture (Locale) From Microsoft-ish LDML
[Updated 11 Aug 2006 to reflect IETF style locale names]This is just a simple example of creating a...
Author: Shawn Steele (MSFT) Date: 11/23/2005
Klingon Custom Culture/Locale MS LDML File
This is intended to go with the custom culture LDML example. Cut & paste this into a file called...
Author: Shawn Steele (MSFT) Date: 11/23/2005
CultureInfo.Name, ToString, LCID & CompareInfo.Name
There are multiple interesting names associated with CultureInfo and related objects, which could be...
Author: Shawn Steele (MSFT) Date: 10/25/2005
Avoid treating binary data as a String.
A common code snippet that I see is something that uses binary data as a String, something like:...
Author: Shawn Steele (MSFT) Date: 09/26/2005
Code Page 21027 "Extended/Ext Alpha Lowercase"
I was playing with code pages and ran into an interesting case: Code Page 21027 - Ext Alpha...
Author: Shawn Steele (MSFT) Date: 09/12/2005
New XPSP2 Locales Available
If you aren't playing with Windows Vista Beta 1 or Microsoft.Net v2 Custom Locales/Cultures, you can...
Author: Shawn Steele (MSFT) Date: 08/09/2005
Microsoft Internationalized Domain Names (IDN) Mitigation APIs 1.0 Released
Today we posted some APIs that convert to & from IDN Punycode, provide some mitigation...
Author: Shawn Steele (MSFT) Date: 08/09/2005
Custom Locales in Windows Vista (Longhorn)
Longhorn finally has a name, so now I have to remember to type Windows Vista :-) I'm a bit busy, but...
Author: Shawn Steele (MSFT) Date: 08/08/2005
Encoding/Decoding/Crypting and buffer lengths
This code snippet has a somewhat common bug. I've seen this bug in all sorts of buffer manipulation...
Author: Shawn Steele (MSFT) Date: 05/10/2005
Culture data shouldn't be considered stable (except for Invariant)
CultureInfo and RegionInfo data represents a cultural, regional, admin or user preference for...
Author: Shawn Steele (MSFT) Date: 04/05/2005