4.10.1 dc_clt_codeconv_open − 文字コード変換の開始
(1) 形式
(a) TP1/Client/Pの場合
#include <dcvclt.h> DCLONG dc_clt_codeconv_open(char CLTFAR *defpath, DCULONG CLTFAR *cnthdl,DCLONG flags)
(b) TP1/Client/P(64)の場合
#include <dcvclt.h> DCLONG dc_clt_codeconv_open(char CLTFAR *defpath, DCCLT_ID CLTFAR *cnthdl,DCLONG flags)
(2) 機能
文字コード変換を開始し,使用するコードマッピングテーブルをメモリに確保します。
(3) UAPで値を設定する引数
-
defpath
NULLを指定します。
-
cnthdl
文字コード変換で使用される制御テーブルのハンドルを受け取る領域へのポインタを指定します。
-
flags
変換方法を指定します。
- DCNOFLAGS
-
コードマッピングテーブルを使用しないで,換算による変換を行います。
- DCCLT_CNV_CommuniNet
-
CommuniNetとの連携による変換を行います。
(4) 値が返される引数
-
cnthdl
メモリ上に確保された文字コード変換制御テーブルのハンドルが返されます。
(5) リターン値
リターン値 |
数値 (10進数) |
意味 |
---|---|---|
DC_OK |
0 |
正常に終了しました。 |
DCCLTER_INVALID_ARGS |
-2501 |
引数に指定した値が誤っています。 |
DCCLTER_NO_BUFS |
-2504 |
メモリ不足が発生しました。 |
DCCLTER_NOFILE |
-2557 |
コードマッピングテーブルがありません。 |
DCCLTER_NOT_SUPPORTED |
-2558 |
現在使用中のコードマッピングテーブルは未サポートです。このリターン値は,CommuniNetインストール後,CommuniNetコードマッピングユティリティでコードマッピングテーブルの保存を一度も行っていない場合にも返されます。 |
DCCLTER_FILE_IO |
-2559 |
コードマッピングテーブルのI/Oエラーが起こりました。 |
(6) 注意事項
-
この機能を使用する場合は,CommuniNetのコードマッピングテーブルが必要です。CommuniNetのコードマッピングユティリティで,コードマッピングテーブルを作成してから,この機能を使用してください。
-
CommuniNetインストール後,一度もCommuniNetコードマッピングユティリティで保存されていないコードマッピングテーブルは,使用できません。この機能を使用する前に,CommuniNetコードマッピングユティリティでコードマッピングテーブルを保存してください。
-
CommuniNetのコードマッピングテーブルのファイル名は,必ずCMAPEX.TBLとし,この機能を使用する前にWindowsのディレクトリ下に格納してください。
-
この機能を使用している途中で,CommuniNetのコードマッピングユティリティによって,コードマッピングテーブルの内容を変更しても,文字コード変換機能の処理には反映されません。
-
この機能では,エラーログ,およびUAPトレースの情報は取得しません。
-
文字コード変換の開始(dc_clt_codeconv_open関数)は,1回だけ発行して,文字コード変換の実行(dc_clt_codeconv_exec関数)をしてください。メモリ不足となるおそれがあるため,文字コード変換の開始は複数回発行しないでください。複数回発行した場合は,発行した回数分,文字コード変換の終了(dc_clt_codeconv_close関数)を発行してください。