Muchas gracias por tu rápida respuesta,
el caso es que la función que me has pasado no consigue matarme el proceso de Excel.
He conseguido detectar si un fichero en cuestión se está ejecutando con la siguiente función:
Código:
function EstaEjecutandose (FileName:string): boolean;
var H:word;
begin
H := CreateFile(PChar(FileName), GENERIC_READ, 0, nil, OPEN_EXISTING, 0, 0);
Result := (H >= 65535);
CloseHandle(H);
end;
de esta manera controlo que un mismo fichero no intenten
abrirlo dos veces, pero lo que quería era poder matar el proceso
que se está ejecutando y a continuación abrir una nueva instancia.
Hago una llamada a la función KillTask pero no hace nada, no se
si la estoy utilizando bien, simplemente hago lo siguiente:
Código:
if EstaEjecutandose(FileName) then
KillTask(FileName)
¿Hay algo que se me escape que pueda estar haciendo mal?
Muchas gracias de nuevo.
Un saludo.