Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 26-03-2009
Khronos Khronos is offline
Miembro
 
Registrado: abr 2007
Posts: 298
Poder: 17
Khronos Va por buen camino
KMem

KMem es un sencillo programa que he hecho para liberar la memoria de los procesos del sistema y hacer que tu Windows se másl ligero!

Para ver una demostración ---> http://www.youtube.com/watch?v=lvijpR5bG88

Para descargarlo ----> http://rapidshare.com/files/213805364/KMem.rar.html


PD. Dentro de poco subiré el código fuente, no es nada del otro mundo

Saludos.

Última edición por Khronos fecha: 26-03-2009 a las 20:22:52.
Responder Con Cita
  #2  
Antiguo 26-03-2009
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.233
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Thumbs up

Gracias por el oporte Khronos. Muy interesante.

Por cierto, revisa el link de descarga, que creo que es incorrecto.

Un saludo.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #3  
Antiguo 26-03-2009
Khronos Khronos is offline
Miembro
 
Registrado: abr 2007
Posts: 298
Poder: 17
Khronos Va por buen camino
Si cierto neftali, ya esta.

http://rapidshare.com/files/213805364/KMem.rar.html
Responder Con Cita
  #4  
Antiguo 28-03-2009
Khronos Khronos is offline
Miembro
 
Registrado: abr 2007
Posts: 298
Poder: 17
Khronos Va por buen camino
Hola, esta tarde me concedieron un espacio en sourceforge para subir mi programa.

http://sourceforge.net/project/showf...kage_id=316055
http://khronosmemory.sourceforge.net/


Pueden descargar el código fuente o el instalador del programa.

Saludos.
Responder Con Cita
  #5  
Antiguo 28-03-2009
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: oct 2006
Posts: 2.159
Poder: 20
cHackAll Va por buen camino
bien! gracias por el aporte Khronos.
Esto no afecta al rendimiento en ordenadores con poca RAM?


Saludos
__________________
RTFM > STFW > Foro > Truco > Post > cHackAll > KeBugCheckEx
Responder Con Cita
  #6  
Antiguo 28-03-2009
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Gracias por compartir tu trabajo. Aquí van unas cuantas sugerencias, a ver qué te parecen.

Valores INI por defecto

Cuando lees un "archivo de idioma", podrías proporcionar un valor "por defecto" a cada valor, para el caso de que una determinda "clave" no se encuentre en el archivo de idioma, o bien tenga un valor (o pueda tener un valor) "vacío".

El método "ExtractName()"

Podría tal vez sustituirse por una sola instrucción, tal que:

Código Delphi [-]
LangBox.Items.Add(ChangeFileExt(ExtractFileName(Rec.Name), ''));

Identificadores anónimos (!)

¿Label1, Label2, Label3? Todavía lo puedo entender... pero ¿V1, V2, V3? El nombre de los identificadores es importante, ayuda a la legibilidad del código fuente. Je je je je... qué puñetero soy.

¿SetProcessWorkingSetSize?

Me temo que he escrito algo sobre este asunto... y creo que no te va a gustar. Me quedó y aun me queda por saber sobre el asunto. Mira, tal vez sea este un buen sitio para discutir sobre el tema, si es menester.

Sea como sea, gracias por compartir tu trabajo.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #7  
Antiguo 28-03-2009
Khronos Khronos is offline
Miembro
 
Registrado: abr 2007
Posts: 298
Poder: 17
Khronos Va por buen camino
Hola, gracias por responder cHackAll y Dec.

Investigué bastante sobre la API SetProcessWorkingSetSize, aunque no tanto como tú dec
Ya sabía que movía partes de la memoria física a la memoria virtual del sistema, pero si Windows lo hace cada vez que minimizas un programa no tiene porque ser perjudicial ¿no?.

Aver este programa lo hice en una tarde de aburrimiento, y si que se nota la diferencia con ciertas tarjetas gráficas, me explico. Como seguramente sabréis hay tarjetas gráficas que no tienen una propia memoria dedicada, si no que emplean la memoria RAM para el renderizado de los gráficos. Usando KMem, tendremos un mayor consumo de memoria virtual pero dejaremos la memoria RAM "más ligera" para otros menesteres como bien puede ser este. Más bien KMem pienso que está pensado para ordenadores con poca memoria.

Y si Dec, en otros proyectos le dedico bastante más tiempo al nombre de los identificadores pero este programa lo hice bastante rápido. Me llevó más trabajo el instalador que el programa

Saludos.
Responder Con Cita
  #8  
Antiguo 28-03-2009
Khronos Khronos is offline
Miembro
 
Registrado: abr 2007
Posts: 298
Poder: 17
Khronos Va por buen camino
Cita:
Valores INI por defecto

Cuando lees un "archivo de idioma", podrías proporcionar un valor "por defecto" a cada valor, para el caso de que una determinda "clave" no se encuentre en el archivo de idioma, o bien tenga un valor (o pueda tener un valor) "vacío".

Código Delphi [-]
procedure TFMain.FormCreate(Sender: TObject);
var
Reg: TRegistry;
i: integer;
begin
LoadLangs();
//En este procedimiento si no encuentra los archivos .lang en la carpeta \lang
//informa que se usará como idioma el español.


  try
    Reg:= TRegistry.Create;
    Reg.RootKey:= HKEY_CURRENT_USER;
    Reg.OpenKey('\Software\KMem', true);
    if Reg.ValueExists('Speed') = false then Reg.WriteInteger('Speed', 3);
    if Reg.ValueExists('StartUp') = false then Reg.WriteBool('StartUp', true);
    if Reg.ValueExists('Ico') = false then Reg.WriteBool('Ico', true);
    if Reg.ValueExists('Lang') = false then Reg.WriteString('Lang', 'spanish');

    i:= langbox.Items.IndexOf(Reg.ReadString('Lang'));
    if i > -1 then
      begin
        langbox.ItemIndex:= i;
        langbox.OnChange(sender);
      end;

    tbTime.Position:= Reg.ReadInteger('Speed');
    CheckBox1.Checked:= Reg.ReadBool('StartUp');
    CheckBox2.Checked:= Reg.ReadBool('Ico');
  finally
    Reg.Free;
  end;
   try
     Reg:= TRegistry.Create;
     Reg.RootKey:= HKEY_LOCAL_MACHINE;
     Reg.OpenKey('\Software\Microsoft\Windows\CurrentVersion\Run', false);
     Reg.WriteString('KMem', Paramstr(0));
   finally
     Reg.free;
   end;
   If CheckBox2.Checked = false then  TrayIcon1.Visible:= false;
end;

Saludos.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 16:21:46.


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
Copyright 1996-2007 Club Delphi