نقل قول نوشته شده توسط mehdimdp مشاهده تاپیک
سلام
یک سئوال: اگر تعداد توابع موجود در dll (که خودم بنویسم)خیلی باشد. یعنی حدود 10 -15 تا باشد؛ باید همه را یکی یکی تعریف کنیم؟
راهی نیست که بتوان توابع موجود در dll رو بدون اینکه یکی یکی تعریفشون کنیم, استفاده کنیم؟
چرا یک راه حل ساده این است که یک کلاس یا interface پایه درست کنید که توابع شما در آنها تعریف شده باشد و فقط در dll یک تابع داشته باشید که یک آبجکت را ایجاد کند و به اشاره گر شما اختصاص دهد از این پس در برنامه شما فقط از اون آبجکت استفاده می کنید.

مثلا :

unit MyBaseClass;

Type
TMyClass = Class
Public
Procedure P1;virtual;abstract;
Procedure P2;virtual;abstract;
Function F1:integer;virtual;abstract;
.
.
.
End;

implementation
end.


و در dll خود یک کلاس از همین کلاس مشتق کنید و تابعی با کدی شبیه این کد بسازید:


Procedure InitObject(Var Obj:TMyClass);
begin
Obj:=TMyClass2.Create;
end;


حالا در داخل برنامه فقط همین تابع را صدا بزنید و از متد های شئی ساخته شده استفاده کنید.