Как проверить с C#, установлены ли файлы для сложных языков сценариев и rtl (региональные и языковые настройки)?
Редактировать: Или есть другой способ проверить, правильно ли будет отображаться текст справа налево в моей форме?
Отредактируйте для лучшего объяснения (надеюсь :)) Я создаю приложение, которое будет использовать арабские буквы (бесплатный словарь). Итак, я хочу проверить, что: «Файлы для сложных сценариев и языков с письмом справа налево (включая тайский)» (флажок в разделе «Язык и региональные стандарты» на вкладке «Язык») установлены (установлен ли флажок?). Если они не установлены, арабские слова не будут отображаться правильно, и я хочу предупредить пользователя, если это так.
Спасибо





Я не уверен, что это поможет вам полностью, но вы можете запросить WMI. Если вы используете .Net, проверьте пространство имен System.Management. Вам будет интересно ...
Пространство имен: root \ cimv2 Класс: Win32_OperatingSystem Свойства: MUILanguages и / или Locale
Спасибо за вашу информацию. Я запросил WMI для свойств Win32_OperatingSystem. Он возвращает класс Win32_OperatingSystem со всеми полями и свойствами, кроме MUILanguages :(
...
uint32 MaxNumberOfProcesses;
uint64 MaxProcessMemorySize;
string MUILanguages[]; //I don't see this field, and all others I see
string Name;
uint32 NumberOfLicensedUsers;
...
Любая помощь? Использую WinXP SP2 и VS2005
Код, который я использовал референция: System.Management;
string ConfigNamespace = @"\\.\root\cimv2";
string query = "select * from Win32_OperatingSystem";
ManagementObjectSearcher searcher =
new ManagementObjectSearcher(ConfigNamespace, query);
ManagementObjectCollection collection = searcher.Get();
foreach (ManagementObject item in collection)
{
//PropertyData pd = item.Properties["MUILanguages"];
foreach (PropertyData data in item.Properties)
{
}
}