Написал на шарпе приложение в котором есть математические символы. Если запускать на XP, то все необычные знаки превращаются в квадратики. Интересно узнать , почему так и как это можно пофиксить? И есть ли вообще возможность добавить в древние ос такого роды символы: Ѵ ⊕ ?
Ну в Windows XP может стоять кодировка по-умолчанию как Windows 1251 (CP1251), так и Windows 1250 (CP1250). Причём, чаще идёт по-умолчанию второй вариант, где нет поддержки кириллического алфавита. Поэтому приходится твиком исправлять недочёт в системе. А для C# родной кодировкой является Юникод (по-умолчанию UTF16). А также зависит от набора поддержки шрифтов. Если таковых в системе нету, то надо установить в систему, либо интегрировать в приложение соответствующий шрифт.
Дам сразу совет: устанавливать надо в систему, ибо интеграция в приложении через делается порт вывода Зимбабвийской зебры и может работать, а может и не работать. Проще и быстрее сразу поставить в систему.
Windows Registry Editor Version 5.0
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage]
"1250"="c_1251.nls"
"1251"="c_1251.nls"
"1252"="c_1251.nls"
"1253"="c_1251.nls"
"1254"="c_1251.nls"
"1255"="c_1251.nls"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontMapper]
"ARIAL"=dword:000000cc
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes]
"Arial,0"="Arial,204"
"Arial Cyr,0"="Arial,204"
"Comic Sans MS,0"="Comic Sans MS,204"
"Courier,0"="Courier New,204"
"Courier,204"="Courier New,204"
"Courier New Cyr,0"="Courier New,204"
"Fixedsys,0"="Fixedsys,204"
"Helv,0"="MS Sans Serif,204"
"MS Sans Serif,0"="MS Sans Serif,204"
"MS Serif,0"="MS Serif,204"
"Small Fonts,0"="Small Fonts,204"
"System,0"="Arial,204"
"Tahoma,0"="Tahoma,204"
"Times New Roman,0"="Times New Roman,204"
"Times New Roman Cyr,0"="Times New Roman,204"
"Tms Rmn,0"="MS Serif,204"
"Verdana,0"="Verdana,204"
Только с юникодом он не поможет, потому что исправляет только не те кодовые таблицы на кирилицу.
Психанул и снес свои ответы не отмечающим решения…
Под XP надо использовать шрифт Arial Unicode MS, который обычно ставится с MS Office (пункт "Универсальный шрифт" в установщике). Его можно поставить и отдельно. Вроде бы в нем все нужные символы есть.