首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >自删除可执行文件(卸载程序)

问自删除可执行文件(卸载程序)
EN

Stack Overflow用户
提问于 2012-08-05 22:07:46
回答 2查看 3.1K关注 0票数 0

我正在试着做一个卸载程序。我基本上需要能够删除包含卸载程序的程序文件中的目录。

我在考虑让卸载程序在temp文件夹中创建自己的副本,然后让从程序文件夹中运行的卸载程序在temp中打开卸载程序,然后关闭自己,继续卸载。

问题是,我如何删除临时文件夹中的卸载程序...

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-08-06 00:16:32

尽管我同意每个人都说你不应该这么做,但你能做的是:

  1. 让您的程序在其运行的操作系统的临时文件夹中创建可执行文件(和配置文件)。
  2. 让您的程序将其作为独立进程启动,然后退出。
  3. 然后回调实际的安装程序内容。
  4. 安装完成后,该临时可执行文件可以删除安装文件。

H19由于程序的唯一痕迹现在位于temp文件夹中,它最终将E110 E211清除automatically.

票数 -1
EN

Stack Overflow用户

发布于 2013-03-08 03:10:57

查看:https://www.catch22.net/tuts/win32/self-deleting-executables

他有多种解决方案-但主要针对C++代码。

我目前正在尝试在C#中实现"DELETE_ON_CLOSE“方法。

对所有反对者的评论:并不是在所有情况下都能解决这个问题。在我的例子中,我的应用程序需要安装到一个网络文件夹中,任何网络用户都可以在其中运行该应用程序。它还需要支持从任何网络工作站进行升级和卸载-不一定与安装应用程序的工作站相同。这意味着我无法将卸载程序注册到本地计算机上的添加/删除程序列表中。我必须创建一个放到安装文件夹中的Uninstall.exe。MSI不支持这一点,所以我必须自己编写。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11817082

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档