Symptomen
Op een computer waarop Microsoft Windows Server 2003 is geïnstalleerd, installeert u de software-update voor Microsoft .NET Framework 2.0 die wordt beschreven in het volgende artikel in de Microsoft Knowledge Base:
928365 Beschrijving van de beveiligingsupdate voor de .NET Framework 2.0 voor Windows Server 2003, Windows XP en Windows 2000: 10 juli 2007
Wanneer u een toepassing uitvoert of probeert toegang te krijgen tot een website op de computer, wordt mogelijk het volgende foutbericht weergegeven:
Opmerking
[System.ArgumentException] : Cultuurnaam 'Cultuur' wordt niet ondersteund voor de volgende 13 culturen: en-CB az-AZ-Latn uz-UZ-Latn sr-SP-Latn az-AZ-Cyrl uz-UZ-Cyrl sr-SP-Cyrl bs-BA-Cyrl sr-BA-Latn sr-BA-Cyrl bs-BA-Latn iu-CA-Latn div-MV
Als een toepassing bronnen heeft die de oude cultuurnaamindeling gebruiken en als de cultuurnaam van de gebruiker de nieuwe cultuurnaamindeling gebruikt, kan de toepassing bovendien geen bronnen voor de oude cultuurnaamindeling vinden.
Oorzaak
De software-update die wordt vermeld in de sectie "Symptomen" is een cumulatieve update voor het .NET Framework 2.0. Deze update omvat wijzigingen in de cultuurnamen. De nieuwe cultuurnamen volgen de syntaxis van de IETF-standaarden (RFC 4646 en RFC 4647). De wijzigingen in de cultuurnamen verbeteren de interoperabiliteit door ervoor te zorgen dat elke landinstelling een consistente id heeft.
De toewijzingen van de oude cultuurnamen aan de nieuwe cultuurnamen zijn als volgt:
| Oude cultuurnaam | Nieuwe cultuurnaam |
|---|---|
| az-AZ-Latn | az-Latn-AZ |
| uz-UZ-Latn | uz-Latn-UZ |
| sr-SP-Latn | sr-Latn-CS |
| az-AZ-Cyrl | az-Cyrl-AZ |
| uz-UZ-Cyrl | uz-Cyrl-UZ |
| sr-SP-Cyrl | sr-Cyrl-CS |
| bs-BA-Cyrl | bs-Cyrl-BA |
| sr-BA-Latn | sr-Latn-BA |
| sr-BA-Cyrl | sr-Cyrl-BA |
| bs-BA-Latn | bs-Latn-BA |
| iu-CA-Latn | iu-Latn-CA |
| div-MV | dv-MV |
| nl-CB | NL-029 |
Tijdelijke oplossing
U kunt dit probleem omzeilen door aangepaste culturen te bouwen op basis van de nieuwe landinstellingen die de oude cultuurnamen gebruiken. Volg hiertoe de volgende stappen.
Opmerking U moet het .NET Framework 2.0 hebben geïnstalleerd om het hier aangeboden voorbeeldprogramma te kunnen gebruiken.
Maak een toepassing die kan worden gebruikt om een aangepaste cultuur op te bouwen. Ga hiervoor als volgt te werk:
Klik op Start, klik op Uitvoeren, typ kladblok en klik vervolgens op OK.
Plak de volgende code in Kladblok.
using System; using System.Globalization; public class MakeCultures { static void Main() { CreateCopyCulture("en-029", "en-CB"); CreateCopyCulture("az-Latn-AZ", "az-AZ-Latn"); CreateCopyCulture("uz-Latn-UZ", "uz-UZ-Latn"); CreateCopyCulture("sr-Latn-CS", "sr-SP-Latn"); CreateCopyCulture("az-Cyrl-AZ", "az-AZ-Cyrl"); CreateCopyCulture("uz-Cyrl-UZ", "uz-UZ-Cyrl"); CreateCopyCulture("sr-Cyrl-CS", "sr-SP-Cyrl"); CreateCopyCulture("bs-Cyrl-BA", "bs-BA-Cyrl"); CreateCopyCulture("sr-Latn-BA", "sr-BA-Latn"); CreateCopyCulture("sr-Cyrl-BA", "sr-BA-Cyrl"); CreateCopyCulture("bs-Latn-BA", "bs-BA-Latn"); CreateCopyCulture("iu-Latn-CA", "iu-CA-Latn"); CreateCopyCulture("dv-MV", "div-MV"); } static void CreateCopyCulture(string strRealName, string strAliasName) { try { // Create a new culture based on the old name CultureAndRegionInfoBuilder carib = new CultureAndRegionInfoBuilder( strAliasName, CultureAndRegionModifiers.None); carib.LoadDataFromCultureInfo(new CultureInfo(strRealName)); carib.LoadDataFromRegionInfo(new RegionInfo(strRealName)); carib.Register(); // Change the existing culture's parent to the old culture carib = new CultureAndRegionInfoBuilder(strRealName, CultureAndRegionModifiers.Replacement); carib.Parent = new CultureInfo(strAliasName); carib.Register(); // Verify they're registered... CultureInfo ci = new CultureInfo(strAliasName); Console.WriteLine("Aliased culture {0} has parent of {1}.", ci, ci.Parent); ci = new CultureInfo(strRealName); Console.WriteLine("\"Real\" culture {0} has parent of {1}.", ci, ci.Parent); } catch (Exception e) { Console.WriteLine("Unable to create custom culture " + strAliasName); Console.WriteLine(e); } } }Opmerking: dit voorbeeldprogramma plaatst de ouders van de nieuwe culturen in de oude culturen. De ouders van de oude culturen kunnen niet tegelijkertijd de nieuwe culturen zijn, omdat deze situatie oneindige recursie zou veroorzaken tijdens het zoeken naar bronnen.
Klik in het menu Bestand op Opslaan als.
Klik in het dialoogvenster Opslaan als op Mijn document, typ MakeCultures.cs in het vak Bestandsnaam, klik op Alle Files in het vak Opslaan als en klik vervolgens op Opslaan.
Sluit Kladblok af.
Voer de toepassing uit die u in stap 1 hebt gemaakt om een aangepaste cultuur te bouwen. Ga hiervoor als volgt te werk:
- Klik op Start, klik op Uitvoeren, typ cmd en klik op OK.
- Typ cd 'Mijn documenten' en druk op Enter
- Typ %windir%\Microsoft.NET\Framework\v2.0.50727\csc /r: sysglobl.dll MakeCultures.cs en druk op Enter.
- Typ MakeCultures.exe om het programma uit te voeren voor het opbouwen van de cultuur.
Status
Microsoft heeft bevestigd dat dit een probleem is bij de Microsoft-producten die worden vermeld in het gedeelte 'Van toepassing op'.