Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.03.14;
Скачать: [xml.tar.bz2];

Вниз

DLL   Найти похожие ветки 

 
Kyrt   (2004-03-03 02:41) [0]

Расскажите, как можно вызвать в программе библиотеку DLL. Если можно на примере. Спасибо.


 
Defunct   (2004-03-03 03:06) [1]

Пишем свою DLL, которая предоставляет какие-то функции для исользования в других программах:

library MyLib;

uses
SysUtils,
Classes;

// Какие-то ваши функции
Procedure DoNothing; stdcall;
Begin
End;

Function GetBy(Condidtion:Boolean; X,Y:Integer):Integer; stdcall;
Begin
If Condition Then Result := X
Else Result := Y
End;

Exports
DoNothing, GetBy;

begin
end.


Потом в своей программе подключаем функции из нашей DLL, например так:

Unit Unit1;

...

Inteface

..
Procedure DoNothing; stdcall;External " mylib.dll";
Function GetBy(Condition:Boolean; X,Y:Integer);Integer; stdcall; External " mylib.dll";
Function
..
// и используем подключенные функции, где нужно


 
Германн   (2004-03-03 03:35) [2]

2 Defunct © (03.03.04 03:06) [1]
Ну Ё-моё, нигде в сабже не указано о "соглашении о вызовах" в той DLL. Ну при чем тут stdcall!
А "соглашение о вызовах", является главным при вызовах функций из DLL!


 
Defunct   (2004-03-03 03:41) [3]

Германн © (03.03.04 03:35) [2]
LOL, Вы мне говорите о соглашении о вызове ;>

http://delphimaster.net/view/1-1078270175/
После "цикла Case" я подумал автор будет рад любому рабочемму примеру взаимодействия с DLL. А про "соглащение о вызовах" он сможет почитать в хелпе, если ему будет интересно.


 
Defunct   (2004-03-03 03:53) [4]

btw я считаю пусть автор вопроса привыкает все делать правильно, цитата из help:
while stdcall and safecall are recommended, in general, for calls to external code.

Пусть в неявном виде, но он запомнит выделенные жирным stdcall, и возможно нажмет на них F1.


 
Германн   (2004-03-03 05:10) [5]

2 Defunct © (03.03.04 03:53) [4]
Да! Если он пишет DLL.
Но из сабжа это не следует. :(((



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2004.03.14;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.011 c
14-43837
МАКСЮХА
2004-02-22 10:58
2004.03.14
Такие дела...


8-43696
Borealis
2003-11-09 19:23
2004.03.14
24-битный цвет в 8-битный


1-43498
h
2004-02-28 23:27
2004.03.14
Вопрос про размещение компонент


6-43720
Giga-Byte
2004-01-07 00:22
2004.03.14
проверка существования mail пользователя


4-43950
Mohamed
2004-01-07 00:12
2004.03.14
Pomogite c Stop Watch





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский