Einzelnen Beitrag anzeigen

ueding

Registriert seit: 21. Aug 2005
30 Beiträge
 
Delphi 10.4 Sydney
 
#1

Speicherfreigabe von Stringlisten in DLL

  Alt 17. Apr 2009, 15:13
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
  Mit Zitat antworten Zitat