7.4.4 Delphiでの印刷方法

Delphiでの印刷方法について説明します。

<この項の構成>
(1) 論理マップの再定義
(2) DLLの呼び出し

(1) 論理マップの再定義

XMAP3では,Delphi用の論理マップは生成できません。このため,C言語の論理マップを生成し,これを参照してDelphi用の論理マップを再定義する必要があります。

XmapDrvSend関数を使用する場合,再定義した論理マップの先頭2バイトには,正しい論理マップの長さが指定されている必要があります。論理マップの長さについては,再定義元の論理マップを参考にしてください。

C言語とDelphiの変数型の互換表を次の表に示します。

表7-15 C言語とDelphiの対応

C言語Delphi
unsigned char 項目名;項目名:Char;
short 項目名;項目名:Short;
long項目名;項目名:Integer;
struct {
    項目定義
      :
} 実体名;
構造体 = packed record
    項目定義
      :
End;
実体名:構造体名;
unsigned char 項目名[10];実体名:array[0..9] of Char;
構造体名は,Typeセクションに定義する必要があります。

(2) DLLの呼び出し

汎用APインタフェースでは,XMAP3が提供するDLLを使用するため,インタフェース宣言ファイルを取り込む必要があります。インタフェース宣言ファイルを取り込む例を次に示します。

  1. インタフェース宣言ファイル「X3mwgd32.pas」をカレントフォルダにコピーします。
  2. [プロジェクト]-[オプション]を選択し,「ディレクトリ/条件」の検索パスを指定します。