Форум: "Основная";
Текущий архив: 2002.11.21;
Скачать: [xml.tar.bz2];
ВнизСоздание DLL Найти похожие ветки
← →
KINDA (2002-11-12 12:05) [0]Уважаемые мастера, подскажите пожалуйста как создавать библиотеки
DLL в Delphi чтобы их можно было подключить в VBA проекте. Почему-то созданная при помощи DLL Wizard библиотека не хочет подключаться в VBA а в Делфи работает.
← →
Слесарь Матерящийся (2002-11-12 12:14) [1]ActiveX library?
← →
stone (2002-11-12 12:17) [2]Тут вопрос не в том как и в чем создавать библиотеки, а как правильно подключать "чужие" библиотеки к VBA
← →
Romkin (2002-11-12 12:22) [3]Лучше действительно использовать ActiveX library, и там создавать Automation Object(s) :-))
тогда в VBA все просто -
set Obj = CreateObject("<ProgID>")
и пользуешься, как обычным объектом
← →
sova (2002-11-12 12:56) [4]Я делал как написано http://delphi.mastak.ru/articles/usedll/index.html,
а в VBA типа:
Declare Function GetMyIP Lib "<name>.dll" Alias "GetMyIP" (MyIP As String) As Long
Проблема только когда в библиотеке возникает исключение, после этого приходится перегружать Ворд
← →
IDKFA (2002-11-12 12:57) [5]Вот тебе ссылка - почитай(там нормально написано):
http://www.compress.ru/Article.asp?id=990
← →
Dimka Maslov (2002-11-12 13:01) [6]>sova
В таком случае в теле экспортируемой функции должен находится блок try..except..end
function ExportFunc(....
begin
try
...
except
end;
end;
← →
Андрей Сенченко (2002-11-12 16:02) [7]У меня не работало пока не надоумили, что нужно хотя-бы иногда соблюдать соглашения о вызовах.
Вот эта DLL вполне нормально поднималась VBA-шниками
LIBRARY convert;
uses
Windows, Graphics, JPEG;
Procedure bmp2jpg(bmpname,jpgname : PChar); stdcall;
var
JPGpic: TJPEGImage;
BMPpic: TBitmap;
begin
JPGpic := TJPEGImage.Create;
BMPpic := TBitmap.Create;
Try
BMPpic.LoadFromFile(BMPName);
JPGpic.Assign(BMPpic);
JPGpic.SaveToFile(JPGName);
Finally
JPGpic.Free;
BMPpic.Free;
End { Try }
end;
Procedure jpg2bmp(bmpname,jpgname : PChar); stdcall;
var
JPGpic: TJPEGImage;
BMPpic: TBitmap;
begin
JPGpic := TJPEGImage.Create;
BMPpic := TBitmap.Create;
Try
JPGpic.LoadFromFile(JPGName);
BMPpic.Assign(JPGpic);
BMPpic.SaveToFile(BMPName);
Finally
JPGpic.Free;
BMPpic.Free;
End { Try }
end;
Exports
bmp2jpg,
jpg2bmp;
end.
← →
KINDA (2002-11-12 17:08) [8]Огромное всем спасибо, все работает.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.11.21;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.007 c