如何实现一个程序,让他运行后删除自己?这是个有趣的问题,在网上找到了一个work的方法:

char szCommandLine[MAX_PATH + 10];

//设置本进程为实时执行,快速退出。

SetPriorityClass(GetCurrentProcess(), REALTIME_PRIORITY_CLASS);

SetThreadPriority(GetCurrentThread(), THREAD_PRIORITY_TIME_CRITICAL);

//通知资源管理器不显示本程序,当然如果程序没有真正的删除,刷新资源管理器后仍会显示出来的。

SHChangeNotify(SHCNE_DELETE, SHCNF_PATH, _pgmptr, NULL);

//调用cmd传入参数以删除自己

sprintf(szCommandLine, "/c del /q %s", _pgmptr);

ShellExecute(NULL, "open", "cmd.exe", szCommandLine, NULL, SW_HIDE);

exit(0)

这里的关键在于两个,一个是将当前的进程优先级设为实时,保证他在启动下面的指令前先完成退出,第二个事利用cmd,exe执行一个shell指令删除当前文件

c++实现一个自杀程序相关推荐

  1. 第一个spring程序

    第一个spring程序: 第一步:导入jar包. 新建maven项目: <dependency><groupId>org.springframework</groupId ...

  2. 快速搭建第一个Mybatis程序

    一.简介 1.初识Mybatis 2.持久化 3.持久层 4.为什么需要Mybatis 二.第一个Mybatis程序 1.搭建环境 2.创建一个新模块 3.编写代码 4.Junit测试 三.可能遇到的 ...

  3. Linux上运行一个c程序

    b站的视频链接:Linux虚拟机运行c程序_哔哩哔哩_bilibili希望对大家有所帮助,不对的地方还请多多指教!https://www.bilibili.com/video/BV18Q4y1r7st ...

  4. Go:分布式学习利器(1) -- 开发环境搭建 + 运行第一个go程序

    文章目录 为什么要学习 go 开发环境搭建 -- MAC 运行第一个go程序 go 函数的返回值设置 go 函数的命令行参数 为什么要学习 go 在如下几个应用场景的需求下产生了go: 超大规模分布式 ...

  5. 用java实现一个计算器程序_1.2第一个java程序——hello world

    第一个java程序--hello world 实现一个java程序,主要有三个步骤:1.编写源代码,2.编译源代码,3.运行.java的源代码必须先编译,然后才能由JVM解析执行.所以我们程序员第一步 ...

  6. C(第一个C程序) 和 C++ (第一个C++程序)对比碰撞

    个人博客首页(点击查看详情) -- https://blog.51cto.com/11495268 1.简介 C++ 是对 C 的继承.扩展,但从语言角度来说,这是 两种变成语言,就一定存在不同,本文 ...

  7. 区块链c端应用小程序_区块链如何真正起作用? 我建立了一个应用程序向您展示。...

    区块链c端应用小程序 by Sean Han 通过肖恩·韩 区块链如何真正起作用? 我建立了一个应用程序向您展示. (How does blockchain really work? I built ...

  8. 如何开发属于自己的第一个Java程序

    学习java技术都是循序渐进的,搭建好了Java开发环境之后,下面就来学习一下如何开发Java程序.为了让初学者更好地完成第一个Java程序,接下来小编通过几个步骤进行逐一讲解. 1.编写Java源文 ...

  9. C#:将另一个应用程序的主窗口移至屏幕最前

    2019独角兽企业重金招聘Python工程师标准>>> 使用WindowsAPI函数SwitchToThisWindow,可以将指定窗口移动到屏幕最前. 如果要将另一个应用程序的窗口 ...

最新文章

  1. python编程入门指南上下百度云-Python编程初学者指南 PDF扫描版[87MB]
  2. Go进阶(9): For Range 性能研究
  3. Linux 调优方案, 修改最大连接数(ulimit命令)
  4. 电商促销插画风PSD分层模板,直击底价!吸睛容情!
  5. HTMLParser使用
  6. 用SQL Server 2017图形数据库替换数据仓库中的桥表
  7. 深入理解浏览器的缓存机制
  8. php xml 修改节点值,.NET_XML文件修改节点属性值(多种方法),xml 文件内容: 复制代码 代码如 - phpStudy...
  9. 基于D3.js的数据可视化前端实现方案
  10. 介绍一些免费好用的静态网站托管服务
  11. 脉冲神经网络SNN的简介
  12. 高德地图3D轨迹回放 + 视野跟随功能
  13. 正点原子stmf103zet6代码移植为stm32f103c8t6(库函数版)
  14. 常见的管道命令:sort、uniq、tr、cut
  15. go 切片排序以及转为带间隔符的字符串
  16. 股票挂钩产品的设计、定价和避险原理
  17. 开发高并发系统的三把利器
  18. typescript关键词Parameters和ReturnType
  19. 李成名:科学就是较真 数字城市/智慧城市就是跑马圈地
  20. PS抠图(菜鸟、快捷键)

热门文章

  1. ASP.NET高校社团信息网站设计源码
  2. 手机定位容易爆露个人隐私
  3. 2023年最新最全软件测试面试题大全
  4. 16次抢断平赛季最高 雷霆威少:防守是立足之本
  5. 没有无线路由器如何共享无线Wifi
  6. 常用word快捷键大全
  7. GIT乱码解决方案汇总及GIT用户名和邮箱修改
  8. Ubuntu——系统语言由英文切换到中文的方法
  9. 孩子最怕听的10句话
  10. 浏览器的排行榜及详细介绍