Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi JVHIDControllerClass mit Speicherlecks? (https://www.delphipraxis.net/130106-jvhidcontrollerclass-mit-speicherlecks.html)

jbg 5. Mär 2009 19:43

Re: JVHIDControllerClass mit Speicherlecks?
 
Wäre schön, wenn du hier einen Kommentar hinterlässt, wenn es geklappt hat. Dann passe ich den JVCL Code an.

Mattze 6. Mär 2009 15:34

Re: JVHIDControllerClass mit Speicherlecks?
 
Hallo,

mache ich natürlich.
Kann aber noch ein Momentchen dauern.
Gestern bin ich nicht mehr dazu gekommen. Vielleicht am Wochenende...

Gruß
Mattze

Mattze 8. Mär 2009 08:13

Re: JVHIDControllerClass mit Speicherlecks?
 
Hallo und guten Morgen,

komisch, aber wahr. Eigentlich wollte ich vor dem Aufstehen nur noch schnell die Umgebung zum Testen fertig machen. Beim Öffnen bin ich genau da gelandet, wo ich schon einen Befehl eingebaut, aber wegen akuten Zeitmangels erst mal wieder auskommentiert hatte.
Diesmal habe ich ihn versucht und es klappte sofort alles!
Ich habe es mit der UsagesDemo und einem Programm von mir, wo ich das HID eingebaut hatte, getestet. Bisher kein Fehler...
Also, bei mir klappt es jetzt.
Wie gleich zu Anfang vermutet, lag es an der fehlenden Freigabe von FPnpInfo in TJvHidDeviceController.Destroy in der Unit JvHidControllerClass.

Genauer:
Delphi-Quellcode:
destructor TJvHidDeviceController.Destroy;
var
  I: Integer;
  HidDev: TJvHidDevice;
begin

(...)

  for I := 0 to FList.Count - 1 do
  begin
    HidDev := FList.Items[I];
    with HidDev do
    begin
      // set to uncontrolled
      FMyController := nil;
//hier muss das dazu kommen:
      FPnpInfo.Free;
      if IsCheckedOut then
        DoUnplug // pull the plug for checked out TJvHidDevices
      else
        Free; // kill TJvHidDevices which are not checked out
    end;
  end;
  FList.Free

(...)

  inherited Destroy;
end;
Gruß
Mattze


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:18 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz