Hallo zusammen
Ich beschäftige mich gerade mit
DLL und habe ein kleines Problem.
erst einmal ein Auszug vom Code
Delphi-Quellcode:
unit U_Barcode;
{$WARN SYMBOL_PLATFORM OFF}
interface
uses
ComObj,
ActiveX, UE_BC_TLB, StdVcl, SysUtils;
type
TBarcode =
class(TAutoObject, IBarcode)
protected
function Get_SetFileName: OleVariant;
safecall;
procedure Set_SetFileName(Value: OleVariant);
safecall;
function Get_GetBcCode: OleVariant;
safecall;
procedure Set_GetBcCode(Value: OleVariant);
safecall;
end;
implementation
uses ComServ, ShlObj,classes,IncodeLib;
var
ErrorCode : integer;
strParse : TStringList;
strRow : TStringlist;
procedure TBarcode.Set_SetFileName(Value: OleVariant);
begin
strParse := TStringList.Create;
strRow := TStringList.Create;
//jetzt füllen der Stringlist
end;
//--------------------------------------------------------------------------------
function TBarcode.Get_GetBcCode: OleVariant;
begin
result := barcode;
end;
initialization
TAutoObjectFactory.Create(ComServer, TBarcode, Class_Barcode,
ciMultiInstance, tmApartment);
end.
ich kann die Stringlisten in der function TBarcode.Get_SetFileName:
nicht freigeben da ich den Inhalt später noch benötige.
Gibt es eine Möglichkeit den Speicher bei "ONDESTROY" freizugeben,
oder wie kann Ich den Speicher beim beenden der
DLL freigeben ?
Danke schon mal für Eure Hilfe
Gregor