Пример DLL
Без модулей
Во-первых, "скелет" DLL, которую вы хотели, сохраняете как DLLFRAME.DPR:
{---------------------DLLFRAME.DPR--------------------------} library Dllframe; uses WinTypes; function GetString : string ; export ; begin Result := 'Привет из DLL!' ; end; exports GetString; begin end. {-----------------------------------------------------------} |
Теперь напишем вызывающую программу и сохраним ее как DLLCALL.DPR:
{---------------------DLLCALL.DPR---------------------------} program Dllcall; uses Dialogs; {$R *.RES} function GetString : string ; far ; external 'DLLFRAME' ; begin MessageDlg( GetString, mtInformation, [ mbOK ], 0 ) ; end. |
С модулями
Код вызывающей программы, сохраните ее как DLLCALL.DPR:
{---------------------DLLCALL.DPR---------------------------} program Dllcall; uses Dialogs; {$R *.RES} function GetString : string ; far ; external 'MyDLL' ; begin MessageDlg( GetString, mtInformation, [ mbOK ], 0 ) ; end. {-----------------------------------------------------------} |
"скелет" DLL, которую вы хотели, сохраняете как DLLFRAME.DPR:
{---------------------DLLFRAME.DPR--------------------------} library Dllframe; uses DLLUnit; exports GetString; begin end. {-----------------------------------------------------------} |
Модуль, который мы сохраняем как dllunit.pas:
{---------------------dllunit.pas--------------------------} unit DLLUnit; interface uses WinTypes; function GetString: string; export; implementation function GetString: string; begin GetString := 'Привет из DLL!' ; end ; begin end. |
[001645]