Вниз
Скачать: CL | DM;

Где косяк при написании DLL ...   Найти похожие ветки 

 
ZSergey   (2005-11-03 08:04) [0]

Привет знатокам!
Написал DLL. Вот ее сходник:

library LoadEx;
uses
 SysUtils,
 Classes,
 ComObj;
procedure CreateExcelObject; stdcall;
var
XL : variant;

begin
XL := CreateOLEObject("Excel.Application"); // Создание OLE объекта
XL.Visible := true;
XL.WorkBooks.add;
XL.visible := true;
end;

exports
 CreateExcelObject name "CreateExcel";
end.

Подключаю библиотечку в приложении статически  и вызываю из нее процедуру вот так:

...
var
 Form1: TForm1;

implementation
procedure CreateExcel; stdcall; external "LoadEx.dll";

{$R *.dfm}

procedure TForm1.btnCreateOleClick(Sender: TObject);
begin
CreateExcel;
end;
end.

Компилирую, когда пытаюсь создать Ole объект, вылетает "Application Error: Exception EOleSysError in module LoadEx.dll at <Код ошибки>". Подскажите, где косяк? Заранее спасибо!


 
Владислав ©   (2005-11-03 08:24) [1]

А "<Код ошибки>" это секретная информация? Может таки посмотреть, что он означает?


 
Lamer@fools.ua ©   (2005-11-03 08:26) [2]

CoInitialize(nil);
(uses ActiveX)


 
Lamer@fools.ua ©   (2005-11-03 08:27) [3]

>>Владислав ©   (03.11.05 08:24) [1]

После "at" идёт не код ошибки, а адрес. ZSergey ошибся.


 
ZSergey   (2005-11-03 08:38) [4]


> Lamer@fools.ua ©   (03.11.05 08:26) [2]
>
> CoInitialize(nil);
> (uses ActiveX)

Спасибо за помощь, работает. Щас буду рыть смысл этой ф-ции.
> >>Владислав ©   (03.11.05 08:24) [1]
>
> После "at" идёт не код ошибки, а адрес. ZSergey ошибся.


Виноват, торопился :).



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.025 c
3-1129118973
Viktop
2005-10-12 16:09
2005.11.27
Создание базы данных Paradox программно


1-1131005206
Владислав
2005-11-03 11:06
2005.11.27
Автоматический вызов деструкторов при выходе из процедуры.


14-1131172685
cyborg
2005-11-05 09:38
2005.11.27
Компьютерные журналы


2-1131777474
RiP
2005-11-12 09:37
2005.11.27
товарищи помогите с процедурой


14-1130875980
x.pro
2005-11-01 23:13
2005.11.27
Подскажите, пожалуйста, какую-нибудь философскую фразу...




   Наверх