説明
オプションの名前付き引数
Alias(name)
引用符付きのnameで指定された名前を、DLLでエンコードされた名前に代えて含める。
Arg(type, <description>, <access mode>, <array>)
Argは、関数がもつ引数ごとに1回ずつ、複数回使用できます。
typeには、次のいずれかのキーワードによって、引数の型を指定します。"Int8"、"UInt8"、"Int16"、"UInt16"、"Int32"、"UInt32"、"Int64"、"UInt64"、"Float"、"Double"、"AnsiString"、"UnicodeString"、"Struct"、"IntPtr"、"UIntPtr"、"ObjPtr"。
descriptionは、引数に対する何らかのコメントを記載する引用符付きの文字列です。
access modeは、引数の渡し方を指定するオプションのキーワードです。"input"は、値渡しを意味します。引数の値を渡す時に指定します。"output"は、アドレス渡しを意味します。値が定義されていない引数のアドレスを渡す時に指定します。"update"は、参照渡しを意味します。引数への参照を渡す時に指定します(この時の引数の値は、JSL変数の値となります)。デフォルト値は、"input"です。
arrayはオプションのキーワードです。このオプションは、typeが"Double"で、access modeが"input"または"update"に指定されている場合のみ有効です。関数の引数が、Doubleの配列であることを指定します。
Convention(calling convention)
呼び出しの規則を指定する。"STDCALL"、"PASCAL"、"CDECL"のいずれかを指定します。デフォルト値は"STDCALL"です。STDCALLとPASCALは等価です。
MaxArgs(n)
使用可能な引数の最大数を整数で指定する。
MinArgs(n)
使用可能な引数の最小数を整数で指定する。
Returns(type)
関数からの戻り値の型を指定する。"Int8"、"UInt8"、"Int16"、"UInt16", "Int32"、"UInt32"、"Int64"、"UInt64"、"Float"、 "Double"、"AnsiString"、"UnicodeString"、"Struct"、"IntPtr"、"UIntPtr"、"ObjPtr"のいずれかを指定します。
StackOrder(order)
関数の呼び出し時における、スタックへの引数の格納順序を指定するキーワード。有効な値は"L2R"(左から右)、"R2L"(右から左)です。デフォルト値は"R2L"です。
StackPop(pop)
エクスポートされた関数が戻った後にスタックをクリアする際の方法を指定するキーワード。有効な値は"CALLER"および"CALLEE"です。デフォルト値は"CALLEE"です。
StructArg(Arg(...), <Arg(...)>, ..., <access mode>, <pack mode>, <description>)
複数回使用できる。エクスポートしたDLL関数において、構造体の引数を引数として渡す必要がある場合は、StructArgを使用して構造体メンバーを宣言します。Arg引数の構文は、前述のDeclare FunctionにおけるArg引数と同じです。他の引数として、access modeおよびpack modeがあります。
access mode(オプション)は、構造体引数が値(input)によって渡されるか、または参照(update)によって渡されるかを指定するキーワードです。
pack mode(オプション)は、構造体のパック方法を指定するための整数です。有効な値は1、2、4、8、16です。デフォルト値は8です。
"description"(オプション)は、構造体に対する何らかのコメントを記載するための引用符付き文字列です。
説明
必須の引数
path
DLLをロードする場所のパス。引用符付きで指定します。
オプションの名前付き引数
AutoDeclare(Boolean|Quiet|Verbose)
AutoDeclare(1)およびAutoDeclare(Verbose)は、ログにverboseメッセージを書き込む。AutoDeclare("Quiet")は、ログウィンドウのメッセージを無効にします。このオプションを省略すると、ログにverboseメッセージが書き込まれます。
Quiet|Verbose
Declare Functionを使用した場合、このオプションは、ログウィンドウへのメッセージ出力のオフ("Quiet")とオン("Verbose")を切り替える。