Программаларды орусташтыруу, айрыкча чет тилдерди билбеген колдонуучулар үчүн маанилүү маселе. Delphi программасынын колдонуучулары аны кантип орусташтырууну ойлонуштурушат.
Нускамалар
1 кадам
Кеп OEM жана ANSI коддору (анда Delphi иштеген) дал келбейт. Алар кирилл белгилеринин ар кандай позицияларына ээ. ANSIде OEM жок акценттик белгилер бар. Бирок экинчисинде таблицаларды көрсөтүү үчүн алмаштыргыс псевдо-графикалык белгилер камтылган, бирок бул анча деле талап кылынбайт. Дагы бир айта кетүүчү нерсе, жалпысынан бул таблицалар бири-бирин алмаштырат - тексттик маалыматты көрсөтүү мүмкүнчүлүктөрү бирдей.
2-кадам
Орусташтыруу маселесин чечүүнүн бир нече жолу бар. Биринчиси, OEM редакторунда иштеп жатат. Алгач программа текстинин OEM кодировкасында иштеген редактордо коддордун таблицасы үчүн маанилүү бөлүктөрүн даярдай аласыз. Абдан жөнөкөй, бирок ошол эле учурда натыйжалуу чечим. Бул айрыкча, жергиликтүү чыгуучу коммуналдык кызматтарды жазууга туура келет, анда маалыматтын чыгышы абдан талап кылынат.
3-кадам
Бул ыкманын кемчиликтери жөнүндө айта турган болсок, бул жерде сиз IDEден тышкары, көпчүлүккө белгилүү болгон коңгуроолору жана ышкырыктары менен жашоону белгилей аласыз, мисалы: коддоо, компиляция, мүчүлүштүктөрдү оңдоо. Жана мунун бардыгы "бир бөтөлкөгө" деп айтылат. Мындан тышкары, долбоордун өсүшү менен, ANSI кодировкасын колдонуу менен түзүлгөн үчүнчү жактын сап ресурстары колдонула баштаганда, белгилүү бир кыйынчылыктар байкала баштайт.
4-кадам
Эгерде долбоордо түздөн-түз кодго киргизилген саптар жок болсо (катуу коддолгон), анда бардык сап ресурстарын өзүнчө модулдарга көчүрүп, аларды талап кылынган кодировкага жайгаштыра аласыз. Бактыга жараша, тармак файлдардын коддолушун өзгөрткөн коммуналдык кызматтарга толгон.
5-кадам
Эми чыпкалоо процедураларын колдонуу жөнүндө. Windows API, ANSI жана OEM коддорун бири-бирине которууга жардам берген функцияларды камтыйт. Бул OemToChar жана CharToOem. Алар Writeln (‘text ') фрагменттерин алмаштыруу менен текстти көрсөтүү үчүн колдонулат; төмөнкү фрагменттерге:
MyWriteln процедурасы (const S: string);
var
NewStr: string;
баштоо
SetLengtn (NewStr, Length (S));
CharToOem (PChar (S), PChar (NewStr));
Writeln (NewStr);
аягы;
MyWriteln (‘текст’);
6-кадам
Бул методдун кемчиликтери жөнүндө айта турган болсок, бул кеңейтилген Жазуу синтаксисин колдонуунун жана процедураны чыпкалоо үчүн приложениянын текстин башаламан колдонуунун мүмкүн эместиги. Жазуу үчүн бир нече чалуулар менен даяр колдонмону Russify керек болгондо, бул олуттуу көйгөй болуп калат.
7-кадам
Акырында, жок дегенде, Windows API аркылуу консоль коду баракчасын өзгөртүңүз. Баса, бул ыкма документтештирилген. Бул өзгөчөлүк Windows 95 жана 98де иштебей калганы гана. Эгерде тиркеме Windows NTде гана иштей турган болсо, анда мындай учурда SetConsoleOutputCP функциясын (866) колдонсоңуз болот.