Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.152 Beiträge
 
Delphi 12 Athens
 
#7

Re: NamedPipe @Buffer[0] exception

  Alt 17. Aug 2009, 12:02
hab jetzt grad nicht die Zeit/Möglichkeit hier auch noch etwas zu testen, aber versuch du doch erstmal dieses in TCustomPipe.readData:
Delphi-Quellcode:
self.cleanBuffer();
if dataCount > Length(self.FBuffer) then
  Raise Exception.CreateFmt('FBuffer ist zu klein (%d < %d)',
    [Length(self.FBuffer), dataCount]);
ReadFile(self.getHandle(), self.FBuffer, dataCount, dataRead, nil);
dataCount := self.dataAvailable();
PS: du hast in der Prozedur zwar den Parameter data definiert, weißt diesem aber nix zu

und es ist schon etwas "unökonomisch", wenn innerhalb der Leseschleife vor jede und nach jedem Lesedurchgang der Puffer neu erstellt und wieder freigegeben wird (wenn dieser eine feste Größe hat, dann reicht es doch auch vor/nach der Schleife und nicht immer wieder innerhalb Dieser)
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat