仙人指路的编程乐园
留言簿 主人介绍 返回主页
Windows驱动 毕设 电子电路 电脑 PE外壳 心情 Windows应用程序 随笔 Web技术 加密算法 古老的DOS编程 杂项
EXE文件执行后删除自己(Delphi)
类别: Windows应用程序  上传时间: 2010-1-21 15:28:52  浏览(329)  留言(0) 
整理电脑旧文件时发现的,很久以前在我的安装程序中用到了。
procedure DeleteSelf();
var
  hModule: THandle;
  buff: array[0..255] of Char;
  hKernel32: THandle;
  pExitProcess, pDeleteFileA, pUnmapViewOfFile: Pointer;
begin
  hModule := GetModuleHandle(nil);
  GetModuleFileName(hModule, buff, sizeof(buff));
  CloseHandle(THandle(4));
  hKernel32 := GetModuleHandle('KERNEL32');
  pExitProcess := GetProcAddress(hKernel32, 'ExitProcess');
  pDeleteFileA := GetProcAddress(hKernel32, 'DeleteFileA');
  pUnmapViewOfFile := GetProcAddress(hKernel32, 'UnmapViewOfFile');
  asm
    LEA    EAX, buff
    PUSH    0
    PUSH    0
    PUSH    EAX
    PUSH    pExitProcess
    PUSH    hModule
    PUSH    pDeleteFileA
    PUSH    pUnmapViewOfFile
    RET
  end;
end;
上一篇: 本站源码出售,意想不到的惊喜  下一篇: 服务程序(参考)


留言
 
查看全部留言



Copyright © 2009 BY MISSSIR,网站版权所有。 京ICP备09095257号

花褪残红青青杏小。燕子飞时,绿水人家绕。枝上柳绵吹又少。天涯何处无芳草。
墙里秋千墙外道。墙外行人,墙里佳人笑。笑渐不闻声渐悄。多情总被无情恼。

今年访问量 24067  今月访问量 627  今日访问量 30 

关于 您的地址
您的大名 您的邮箱
QQ/MSN/Tel 是否保密
留言内容