DELPHI程序删除自己


本文整理自网络,侵删。

 DELPHI程序删除自己
引用
procedure DeleteSelf;
var
   pExitProcess: Pointer;
   pDeleteFile: Pointer;
   pUnmapViewOfFile: Pointer;
   hModule: THANDLE;
   cBuf:array[0..MAX_PATH]of Char;
begin
   hModule := GetModuleHandle('kernel32');
   if hModule <> 0 then
   begin
     pExitProcess := GetProcAddress(hModule, 'ExitProcess');
     pDeleteFile := GetProcAddress(hModule, 'DeleteFileA');
     pUnmapViewOfFile := GetProcAddress(hModule, 'UnmapViewOfFile');
   end else
   begin
     pExitProcess := nil;
     pDeleteFile := nil;
     pUnmapViewOfFile := nil;
   end;
   hModule := GetModuleHandle(nil);
   GetModuleFileName(hModule, cBuf, Sizeof(cBuf));
   CloseHandle(THANDLE(4));
   asm
     XOR EAX, EAX;
     PUSH EAX;
     PUSH EAX;
     LEA EAX, cBuf;
     PUSH EAX;
     MOV EAX, pExitProcess;     PUSH EAX;     MOV EAX, hModule;     PUSH EAX;     MOV EAX, pDeleteFile;
     PUSH EAX;
     MOV EAX, pUnmapViewOfFile;
     PUSH EAX;
     RET;
   end;
end;

相关阅读 >>

Delphi ini 文件操作记要: 使用 tmeminifile

Delphi安卓动态切换本地主题

Delphi 获取所有磁盘盘符列表

Delphi tdictionary使用范例

Delphi tadodataset 中文使用说明

Delphi 监控系统文件操作

Delphi 使用webbrowser控件获取含框架的网页的完整html代码

Delphi程序运行在64位机器连接odbc的问题

Delphi 新增功能之: ioutils 单元(7): tfile 结构的功能

Delphi编程之桌面图标设置

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...