注: カスタマイズされた文字セット変換を作成すると、結果として生成されるプログラムはスレッド セーフではなくなります。これは通信プロセス (MFCS) の問題を引き起こしメモリ破損の原因になります。
これを防ぐには、局所記憶節宣言を %ProgramFiles(x86)%\Micro Focus\Visual COBOL\src\codeset\csnnnn.cbl ファイルの作業場所節の直後に挿入します。ここで、nnnn は 4 桁の国別コードです。
- Visual COBOL コマンド プロンプトを起動します。手順については、「Visual COBOL コマンド プロンプトを起動するには」を参照してください。
- 一時ファイルの格納先として新しいフォルダーを作成し、そのフォルダーに移動します。次に例を示します。
Windows:
md mylang
cd mylang
UNIX:
mkdir mylang
cd mylang
- コマンド プロンプトで、次のように入力します。
Windows:
set mfcodeset=nnnn
UNIX:
export MFCODESET=nnnn
nnnn には、カスタマイズに適した文字コード変換テーブルに対応する 4 桁の国別コードを指定します。
- 次のように入力します。
codecomp /p mapfile.a2e mapfile.e2a
mapfile.a2e ファイルと mapfile.e2a ファイルが、現在のフォルダーに作成されます。
- マップファイル内の変換テーブルを必要に応じて編集します。mapfile.a2e には ANSI から EBCDIC への変換テーブルが含まれ、mapfile.e2a には対応する EBCDIC から ANSI への変換テーブルが含まれています。
- 次のように入力します。
codecomp mapfile.a2e mapfile.e2a
codeset.cpy ファイルが現在のフォルダーに作成されます。
- 次のように入力します。
Windows:
copy "%ProgramFiles(x86)%\Micro Focus\Visual COBOL\src\codeset\csnnnn.cbl" csnnnn.cbl
UNIX:
cp $COBDIR/src/codeset/csnnnn.cbl csnnnn.cbl
注: 32 ビットの Windows では、
%ProgramFiles(x86)% は
%ProgramFiles% になります。
%ProgramFiles(x86)%\Micro Focus\Visual COBOL はインストール ディレクトリで、nnnn はカスタマイズ コードセット モジュールを指す 2000 ~ 9999 の番号 (9122 を除く) です。
- 次のように入力します。
Windows:
cobol csnnnn.cbl omf(gnt);
- 次のように入力します。
32 ビット Windows 環境の場合:
copy csnnnn.gnt "%ProgramFiles%\Micro Focus\Visual COBOL\bin"
64 ビット Windows 環境の場合:
copy csnnnn.gnt "%ProgramFiles(x86)%\Micro Focus\Visual COBOL\bin64"
UNIX:
cp csnnnn.gnt $COBDIR/bin
注: 32 ビットの Windows では、
%ProgramFiles(x86)% は
%ProgramFiles% になります。
%ProgramFiles(x86)%\Micro Focus\Visual COBOL はインストール ディレクトリで、nnnn はカスタマイズ コードセットの番号です。