如何在Java中制作卸载程序

3
如何在Java中制作一个卸载程序(适用于Windows)? 我知道如何删除文件,但我想知道如何将卸载程序放置在“配置屏幕”的“删除程序”部分。 请仔细阅读问题,我们不需要有关制作安装程序的软件答案,因为我们已经编写了自己的程序。我们是一群充满创意的学生,所以我们希望自己编写这些内容,而不是使用别人的软件。 祝好, 乔纳森

嘿,Jonathan,你找到制作卸载程序的方法了吗?我想在用户尝试卸载我的应用程序时询问密码。你有什么想法吗? - Jay Patel
5个回答

阿里云服务器只需要99元/年,新老用户同享,点击查看详情
1
请不要自己编写安装程序。看起来很简单,但实际上并不是。 要么让用户通过Java WebStart启动您的程序(它看起来不像Windows系统,但对于中央分发模型是可以接受的),要么使用支持Java的现有安装程序之一。 注意:如果您的目标是企业,请选择生成MSI的安装程序。这些可以被集中静默安装。

我想请问如何制作卸载程序,安装程序已经完成。 - Jonathan
1
不要这样做。正确完成它的复杂细节,并在操作系统中正确注册它是一项非常重要的工作。 - Thorbjørn Ravn Andersen

1

你本来就不应该自己编写安装程序。

放弃它,并使用专业编写的安装程序生成器来生成安装程序(其中将包括卸载程序)。

我建议Launch4J,或者对于更简单的安装(即没有自定义安装选项),Java Web Start可能更容易些。


我要求一个卸载程序的答案,安装程序已经完成。 - Jonathan
@Jonathan,我知道这一点,并且我建议你放弃那个“完成”的安装程序,用一个合适的替代品来取而代之。 - finnw
现在你在暗示我们的安装程序不正确,你知道自己有多无礼吗?你甚至不知道我们是如何编写它的。即使我们没有编写一个正确的安装程序,也不要错过学习的机会,尽管有更好的安装程序存在,但你不应该回答这样的问题,因为我们明确表示我们只想了解卸载程序,这对我们来说是一个学习的机会,所以如果我们不想从这个经验中学习,我们会提出另一个问题,询问一个制作安装程序的程序,并选择简单的方式。 - Jonathan
@Jonathan,如果你想学习一些东西,那么“使用这个产品”的答案可能仍然适用,如果这些产品是开源的,并且你可以通过阅读它们的代码来学习如何做到这一点。我不知道如何将条目添加到注册表中,通常我会让另一个程序为我完成,但如果我必须编写自己的程序,我会从阅读Launch4J的源代码开始。 - finnw
谢谢,那是一个答案,但请注意在您的回答中而不是在一大堆评论之后,您可能会从这个线程或另一个线程中学到一些东西,因为如果我们有一个有价值的答案,我们将发布它。 - Jonathan

0

Izpack 允许创建跨平台安装程序,可选择卸载(在 MS Windows 的“添加/删除”中)


我想请问如何制作卸载程序,安装程序已经完成。 - Jonathan

0

或者您可以尝试非免费的Install Anywhere


我想请教如何制作一个卸载程序,安装程序已经制作完成。 - Jonathan
我们只需要知道如何将卸载程序放置在Windows的“卸载程序”文件夹中。 - Jonathan
据我所知,要将程序从列表中移除,只需要从注册表中删除某些内容,因此我认为,要在那里添加某些内容,您需要向注册表中添加某些内容(至少对于winXP)。 - dhblah
1
@Jonathan- 你需要在注册表中添加一个值。查看此链接 - Ram

0

Java Web Start提供了卸载功能。它还提供了ExtensionInstallerService,旨在执行标准“缓存或删除类”之外的其他设置/拆除(例如,安装/卸载DB)。

这是我的ExtensionInstallerService演示


顺便提一下 - 注意到你的进一步评论,我同意不要选择那条路。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,