COBOL2002 ユーザーズガイド


35.3.1 インポートライブラリの指定

DLLを呼び出すプログラムから実行可能ファイルを生成する場合,静的なリンクでDLLを呼び出すには,ccbl2002コマンドにインポートライブラリを指定する必要があります。

なお,Windows(x64) COBOL2002の場合は「-Dll,Stdcall」と「Dll,Cdecl」を「-Dll」に読み替えてください。

DLLの呼び出しについては,「18.6 DLLに含まれるプログラムの呼び出し」を参照してください。

〈この項の構成〉

(1) 静的なリンクの場合

静的にリンクする実行可能ファイルを作成する場合は,ccbl2002コマンドにインポートライブラリを指定します。

ccbl2002コマンドの指定例を,次に示します。

使用例

[図データ]

ccbl2002コマンドの指定

ccbl2002コマンドで-Dll,Stdcallまたは-Dll,Cdeclオプションを指定して,"test02.cbl"に対するDLL "test02.dll"を生成します。このとき,インポートライブラリ"test02.lib"も同時に生成されます。

ccbl2002 -Dll,Stdcall test02.cbl -OutputFile test02.dll

主プログラム"test01.cbl"に対し-Main,Systemオプションを指定し,"test02.dll"作成時に生成されたインポートライブラリ"test02.lib"を指定します。

ccbl2002 -Main,System test01.cbl test02.lib -OutputFile test03.exe

上記のコマンドを実行すると,DLLファイル"test02.dll"に静的にリンクする実行可能ファイル"test03.exe"が生成されます。

(2) 動的なリンクの場合

動的なリンクで実行可能ファイルを作成する場合には,インポートライブラリは必要ありません。

(3) DLLからほかのDLLを呼び出す場合

DLLからほかのDLLを呼び出す場合も,実行可能ファイルと同様に,静的リンクの場合は呼び出し元プログラムのインポートライブラリをすべて指定する必要があります。また,動的リンクの場合はインポートライブラリの指定は不要です。