DLL 内の手続きを、他のプログラムから見えるようする必要があることを示す、定義指定子。
構文:
記述:
DLL で、この句を使って関数が定義されると、この関数は、パブリック・エクスポート・テーブルに追加されます。
このため、外部プログラムは、
Dylibsymbol を使って動的にリンクできます。
(手続き定義の最初の行のレベルに配置される指定子で、手続き宣言の行レベルでは禁止されています。)
例:
'' mydll.dll
'' DLLでは、関数は、エキスポートとして宣言しなければなりません
Function AddNumbers Alias "AddNumbers" _
( _
ByVal operand1 As Integer, ByVal operand2 As Integer _
)
As Integer Export
AddNumbers = operand1 + operand2
End Function
'' 関数ポインターを作成します。
'' 引数は、元の関数の場合と、同じ型でなければなりません
Dim AddNumbers As Function ( ByVal As Integer, ByVal As Integer ) As Integer
Dim hndl As Any Ptr
hndl=DyLibLoad
("mydll.dll")
'' proc アドレスを見つけます。(ケースの件!)
AddNumbers = DyLibSymbol
( hndl, "AddNumbers" )
'' そして、それを呼びます ...
Print "1 + 2 = " & AddNumbers
( 1, 2 )
Sleep
方言差:
-
別名__Exportと共に参照をつけない場合、-lang qb 方言で利用できません。
プラットホーム差:
-
エクスポートは、DOS ダイナミック リンク ライブラリ (DXE) では効果がありません。 すべてのパブリック 手続きがエクスポートされます。
QBからの違い:
参照: