Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 01-04-2008
cucuy cucuy is offline
Miembro
 
Registrado: mar 2007
Posts: 30
Poder: 0
cucuy Va por buen camino
Conocer lista de programas ejecutandose

Hola amigos del foro, quiero saber si alguien de ustedes sabe la forma de conocer la lista de programas que se estan ejecutando en windows, al estilo del administrador de tareas. Con el fin de identificar algunos programoas no deseados y poderlos cerrar.

Saludossssss
Responder Con Cita
  #2  
Antiguo 02-04-2008
Avatar de aeff
aeff aeff is offline
Miembro
 
Registrado: oct 2006
Ubicación: Cuba, Guantánamo
Posts: 348
Poder: 18
aeff Va camino a la fama
saludos, mira, no se a que te refieres con "al estilo del administrador de tareas", pero puedes usar esto, mira, coloca un ListBox en tu form y un Button, en el evento onClick del Button coloca este código:

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
  vPhotoMem: Cardinal;
  vPData: TProcessEntry32;
begin
  ListBox1.Clear;
  vPhotoMem := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
  while Process32Next(vPhotoMem, vPData) do
    begin
      ListBox1.Items.Add(vPData.szExeFile)
    end;
end;

claro, que no se te olvide añadir la unit tlHelp32 en el uses.

saludos!
aeff!

Última edición por aeff fecha: 02-04-2008 a las 06:58:01.
Responder Con Cita
  #3  
Antiguo 02-04-2008
Avatar de aeff
aeff aeff is offline
Miembro
 
Registrado: oct 2006
Ubicación: Cuba, Guantánamo
Posts: 348
Poder: 18
aeff Va camino a la fama
ñooooooo!! para serte mas claro, con lo anterior lo que haces es mostrar una lista de los procesos en ejecución, ahh!, te digo que los proceso que son del SYSTEMA no se pueden cerrar, como el Winlogon el LSASS etc..., pero si lo que quieres es cerrar el proceso que selecciones en el listbox entonces te doy una idea un poco rustica pero funciona,

mira, pon otro button con el cual pretenderas cerrar el proceso e implementa este codigo:

Código Delphi [-]
{añade en el uses a ShellApi}
uses ...,ShellApi;

{Implmentas esta funcioncita, para ya verás...}
function GetOnlyName(pFileName: string): string;
begin
  Result := Copy(ExtractFileName(pFileName), 1, Pos('.', ExtractFileName(pFileName)) -1);
end;

{y en el Evento onclick del button que va a cerrar el proceso seleccionado}
procedure TForm1.Button2Click(Sender: TObject);
begin
  ShellExecute(Handle, nil, 'Tskill.exe', pChar(GetOnlyName(ListBox1.Items.Strings[ListBox1.ItemIndex])),
               nil, SW_HIDE);

end;

bueno, es un invento, lo que hacemos es mandar a cerrar el proceso con un programa del propio Windows llamdo Tskill.exe

espero que te sirva este metodo rustico

saludos!
aeff!
Responder Con Cita
Respuesta



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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
¿Limpiar lista de programas abiertos recientemente? anekro Varios 2 27-03-2008 19:12:07
Limpiar lista de programas abiertos. anekro Varios 1 15-10-2007 17:53:21
Conocer lista de tablas de Base Datos (Firebird 2.0 y Componentes IBObjects) mpedrero Conexión con bases de datos 5 16-02-2007 10:55:59
Conocer lista de tablas de Base Datos (Firebird) toni.vi Conexión con bases de datos 6 15-02-2007 11:34:32
Cerrar programas que no están el la lista DarkByte Varios 7 26-03-2004 23:14:29


La franja horaria es GMT +2. Ahora son las 08:19:33.


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