Пример 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: face="Courier New" size="2"> {---------------------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. |