Club Delphi  
    Paypal   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

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 17-09-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.142
Poder: 36
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Una posible forma:

Código Delphi [-]
uses
  TlHelp32;

function MatarProcesos(nombre: string): boolean;
var
  moduleEntry: TModuleEntry32;
  processEntry: TProcessEntry32;
  hSnapshot, hProcess: cardinal;
begin
  result := false;
  moduleEntry.dwSize := SizeOf(TModuleEntry32);
  processEntry.dwSize := SizeOf(TProcessEntry32);
  hSnapshot := CreateToolHelp32Snapshot(TH32CS_SNAPPROCESS,0);
  if Process32First(hSnapshot,processEntry) then
  begin
    repeat
      if (lstrcmpi(PChar(nombre),@processEntry.szExeFile) = 0) then
      begin
        hProcess := OpenProcess(PROCESS_TERMINATE,
                     false,processEntry.th32ProcessID);
        result := TerminateProcess(hProcess,0);
        CloseHandle(hProcess);
      end;
    until not Process32Next(hSnapshot,processEntry);
  end;
  CloseHandle(hSnapshot);
end;

procedure TForm2.Button1Click(Sender: TObject);
begin
  MatarProcesos('calc.exe');
end;
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #2  
Antiguo 17-09-2007
jocey jocey is offline
Miembro
 
Registrado: ene 2007
Posts: 111
Poder: 20
jocey Va por buen camino
Cita:
Empezado por dec Ver Mensaje
Hola,

Una posible forma:

Código Delphi [-]uses TlHelp32; function MatarProcesos(nombre: string): boolean;
var moduleEntry: TModuleEntry32; processEntry: TProcessEntry32; hSnapshot, hProcess: cardinal; begin result := false; moduleEntry.dwSize := SizeOf(TModuleEntry32); processEntry.dwSize := SizeOf(TProcessEntry32); hSnapshot := CreateToolHelp32Snapshot(TH32CS_SNAPPROCESS,0); if Process32First(hSnapshot,processEntry) then begin repeat if (lstrcmpi(PChar(nombre),@processEntry.szExeFile) = 0) then begin hProcess := OpenProcess(PROCESS_TERMINATE, false,processEntry.th32ProcessID); result := TerminateProcess(hProcess,0); CloseHandle(hProcess); end;
until not Process32Next(hSnapshot,processEntry);
end;
CloseHandle(hSnapshot);
end;

procedure TForm2.Button1Click(Sender: TObject);
begin MatarProcesos('calc.exe');
end;



Muchas gracias amigo
Responder Con Cita
  #3  
Antiguo 17-09-2007
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 26
seoane Va por buen camino
Y no sera un poco excesivo matarlo, no llegaría con cerrarlo
Código Delphi [-]
  PostMessage(Findwindow('WMPlayerApp',nil),WM_CLOSE,0,0);
Responder Con Cita
  #4  
Antiguo 17-09-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.142
Poder: 36
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Cita:
Empezado por seoane
Y no sera un poco excesivo matarlo, no llegaría con cerrarlo
Nada. A los procesos ni agua. Que luego se replican y te llenan toda la memoria. ¡Hay que acabar con ellos de raíz!
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #5  
Antiguo 17-09-2007
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 26
seoane Va por buen camino
Cita:
Empezado por dec Ver Mensaje
Nada. A los procesos ni agua. Que luego se replican y te llenan toda la memoria. ¡Hay que acabar con ellos de raíz!
Siendo así, lo mejor es desenchufar el ordenador
Responder Con Cita
  #6  
Antiguo 17-09-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.142
Poder: 36
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Cita:
Empezado por seoane
Siendo así, lo mejor es desenchufar el ordenador
Es un buen consejo. Llegado el caso, es un buen consejo.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #7  
Antiguo 17-09-2007
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.572
Poder: 27
egostar Va camino a la fama
Cita:
Empezado por dec Ver Mensaje
Hola,



Nada. A los procesos ni agua. Que luego se replican y te llenan toda la memoria. ¡Hay que acabar con ellos de raíz!
Y si son familiares de M$ mucho mejor...., diria nuestro amigo Casimiro

Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #8  
Antiguo 10-11-2009
Avatar de Cañones
Cañones Cañones is offline
Miembro
 
Registrado: ene 2007
Ubicación: La Paz Entre Ríos
Posts: 354
Poder: 20
Cañones Va por buen camino
Cita:
Empezado por seoane Ver Mensaje
Y no sera un poco excesivo matarlo, no llegaría con cerrarlo
Código Delphi [-] PostMessage(Findwindow('WMPlayerApp',nil),WM_CLOSE,0,0);
Hola, estoy tratando de cerrar una aplicación con el método que indicas, probé con una ventana X y funciona, ahora necesito hacer esto con una aplicación que esta en modo systray y no funciona, como puedo hacer esto?

Desde ya muchas gracias a todos por su tiempo.
Responder Con Cita
  #9  
Antiguo 11-11-2009
Avatar de Axel_Tech
Axel_Tech Axel_Tech is offline
Miembro
 
Registrado: nov 2008
Ubicación: lugar en que está ubicado algo.
Posts: 85
Poder: 18
Axel_Tech Va por buen camino
Cañones prueba esto, yo lo hago así:
Código Delphi [-]
ShellExecute(Handle, nil, 'cmd', 'cmd /c taskkill /im nombreProceso.exe', nil, SW_HIDE);
Debes añadir ShellApi a tus uses.

Última edición por Axel_Tech fecha: 11-11-2009 a las 10:34:44.
Responder Con Cita
  #10  
Antiguo 11-11-2009
Avatar de Cañones
Cañones Cañones is offline
Miembro
 
Registrado: ene 2007
Ubicación: La Paz Entre Ríos
Posts: 354
Poder: 20
Cañones Va por buen camino
Hola, gracias por tu pronta respuesta. Eso es lo que necesitaba.

Gracias por tu tiempo.

Saludos.
Isidoro
Responder Con Cita
  #11  
Antiguo 15-11-2009
Avatar de bosster_018
bosster_018 bosster_018 is offline
Miembro
 
Registrado: nov 2009
Ubicación: Bolivia
Posts: 127
Poder: 17
bosster_018 Va por buen camino
Tarde pero aclarando algunas dudas

¿Y no podríamos usar el "ShellExecute" para matar el proceso con "tskill":

Uses
ShellApi

Código Delphi [-]
//Eliminar el proceso Windows Media Player (wmplayer) con tskill
ShellExecute(Handle, nil, 'tskill', 'wmplayer', nil, sw_hide);
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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Procesos críticos de windows maikeloh Varios 0 25-02-2007 22:46:41
Acceso a los procesos de windows jymy788 Varios 3 31-08-2005 15:01:11
Ver procesos de windows darkpale API de Windows 2 19-10-2004 10:37:12
Acceso a los procesos de windows jymy788 Varios 6 27-09-2004 20:14:25
"enditall" finalizar aplicacs y procesos innecesarios para por ejemplo...editar video images API de Windows 7 20-09-2004 09:55:14


La franja horaria es GMT +2. Ahora son las 03:00:27.


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