Ver Mensaje Individual
  #5  
Antiguo 21-02-2008
RaulChemical RaulChemical is offline
Miembro
 
Registrado: jul 2003
Ubicación: Madrid
Posts: 59
Reputación: 21
RaulChemical Va por buen camino
Matamos el excel

Buenas....

En algunos otros puntos de la aplicación, a petición del cliente, matamos el excel. Para matarlo, llamamos a esta función que encontramos en el TrucoMania (creo).

Código Delphi [-]
function KillTask(FileName:String):integer;
var
  ContinueLoop:BOOL;
  FSnapshotHandle:THandle;
  FProcessEntry32:TProcessEntry32;
const
  PROCESS_TERMINATE=$0001;
begin
Result:=0;
  FSnapshotHandle:=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
  FProcessEntry32.dwSize:=Sizeof(FProcessEntry32);
  ContinueLoop:=Process32First(FSnapshotHandle,FProcessEntry32);
  while integer(ContinueLoop)<>0 do
  begin
    if ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile))=UpperCase(FileName)) or
       (UpperCase(FProcessEntry32.szExeFile)=UpperCase(FileName))) then
      Result:=Integer(TerminateProcess(OpenProcess(PROCESS_TERMINATE,BOOL(0),
                                       FProcessEntry32.th32ProcessID),0));
    ContinueLoop:=Process32Next(FSnapshotHandle,FProcessEntry32);
  end;
  CloseHandle(FSnapshotHandle);
end;

Espero que te sirva la función o parte de ella.

Suerte.
__________________
ash nazg durbatulûk
ash nazg gimbatul
ash nazg thrakatulûk
agh burzum-ishi krimpatul
Responder Con Cita