Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 23-01-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
Este tema ya se trato en el foro otras veces. Pero de todas formas:

Usando un bat:
Código Delphi [-]
uses ShellApi;

procedure Borrate;
var
  Path: String;
  Buffer: array[0..MAX_PATH] of Char;
begin
  if GetShortPathName(PChar(ParamStr(0)),@Buffer, Sizeof(Buffer) -1) = 0 then
    Exit;
  Path:= String(PChar(@Buffer));
  with TStringList.Create do
  try
    Add(':BUCLE');
    Add('Del ' + Path);
    Add('if %ERRORLEVEL% NEQ 0 goto BUCLE');
    SaveToFile(ChangeFileExt(ParamStr(0),'.bat'));
    ShellExecute(0,nil,PChar(ChangeFileExt(ParamStr(0),'.bat')),nil,nil,SW_SHOW);
  finally
    Free;
  end;
end;

// Por ejmeplo, lo usamos en el evento OnClose
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  Borrate;
end;

Usando MoveFileEx, retrasando el borrado hasta que el equipo se reinicie:
Código Delphi [-]
procedure Borrate;
var
  Buffer: array[0..MAX_PATH] of Char;
begin
  if GetShortPathName(PChar(ParamStr(0)),@Buffer, Sizeof(Buffer) -1) <> 0 then
    MoveFileEx(Buffer, nil, MOVEFILE_DELAY_UNTIL_REBOOT or
      MOVEFILE_REPLACE_EXISTING);
end;

Y si no te gusta ninguna de las 2, en esta pagina explican todas las formas imaginables para hacerlo.

http://www.catch22.net/tuts/selfdel.asp
Responder Con Cita
  #2  
Antiguo 23-01-2007
Avatar de hvelascos
hvelascos hvelascos is offline
Miembro
 
Registrado: ene 2007
Posts: 18
Poder: 0
hvelascos Va por buen camino
muchas gracias seoane, y por lo de
Cita:
Este tema ya se trato en el foro otras veces.
disculpa si hago preguntas que ya fueron tratadas pero soy nuevo en esto del foro, y como que todavia no se realizar busquedas muy eficientes que digamos, aveces creo que nadie ha preguntado sobre el tema, a causa de eso creo los nuevos hilos.

Mil disculpas, y gracias por la informacion que me proporcionaste

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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
evitar ejecutar la misma aplicacion 2 veces noe API de Windows 13 26-05-2008 19:30:03
de una misma tabla Citlalli Firebird e Interbase 9 19-09-2006 20:29:07
Como trabajar con tres BD diferentes en una misma aplicacion valera Conexión con bases de datos 1 26-10-2005 03:37:09
¿Como no permitir mas de 1 ejecucion de la misma aplicacion? Moises22 Varios 2 27-09-2005 13:47:19
ejecutar aplicacion 2 veces en misma maquina maruenda Varios 1 07-02-2004 19:19:24


La franja horaria es GMT +2. Ahora son las 20:07:06.


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