Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   API de Windows (https://www.clubdelphi.com/foros/forumdisplay.php?f=7)
-   -   TSHFileInfo, se ha de liberar? (https://www.clubdelphi.com/foros/showthread.php?t=27654)

[Gunman] 27-11-2005 19:44:14

TSHFileInfo, se ha de liberar?
 
Hola, en mi programa utilizo en varias funciones el tipo TSHFileInfo para obtener las propiedades de archivos que listo en un ListView en modo virtual. Cuando uso estas funciones el programa aumenta el uso de RAM aunque muestre el mismo directorio. En mis funciones no libero (no se si se ha de/puede hacer). Una función de ejemplo:
Código Delphi [-]
 function GetLocalImageIndex(lFileName: String): Integer;
 var
     ShFileInfo: TSHFileInfo;    
 begin
     ShGetFileInfo(PAnsiChar(lFileName),0,ShFileInfo,SizeOf(ShFileInfo),
                 SHGFI_SYSICONINDEX);
   Result := ShFileInfo.iIcon;
 end;
Espero impaciente vuestra contestación.

Muchas gracias de antemano, [Gunman].

roman 27-11-2005 22:21:42

ShFileInfo es una variable local y la memoria que se le asigne se liberará automáticamente al momento de salir del procedimiento. Así que no, no tienes ni debes liberarla.

// Saludos

[Gunman] 28-11-2005 00:23:37

Muchas gracias pero que explicacion le das al aumento de memória?

roman 28-11-2005 15:50:10

Para rastrear fugas de memoria podrías usar algo como MemProof.

// Saludos

[Gunman] 28-11-2005 21:14:36

Gracias por el programilla roman, pero... como se utiliza? es decir, cómo/dónde puedo ver si mi programa pierde memória o no?


La franja horaria es GMT +2. Ahora son las 05:12:30.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi