Сборник лабораторных работ по дисциплине "Прикладное программное обеспечение". Самохвалов К.М. - 68 стр.

UptoLike

Составители: 

68
{Указываем, что функция находится в DLL}
function AddNumbers(a, b: Double): Double; cdecl; external 'Example.dll';
{Используем функцию как обычно}
var result: Double;
begin
result := AddNumbers(1, 2);
Writeln('The result was: ', result)
end.
Подгрузка и импорт из DLL во время работы
program Example;
{$APPTYPE CONSOLE}
var result: Double;
LibHandle: Hmodule;
AddNumbers: function(a, b: Double): Double;
begin
LibHandle := LoadLibrary('Example.dll'); // загружаем DLL
if LibHandle <> 0 then
begin
@AddNumbers := GetProcAddress(LibHandle, 'AddNumbers');
// запоминаем адрес необходимой функции
if @AddNumbers <> nil then
begin
result := AddNumbers(1, 2); // используем функцию
Writeln('The result was: ', result);
end;
FreeLibrary(LibHandle); // выгружаем DLL
end;
end.