建议的文件夹在哪里临时存储Runonce进程所需的EXE

时间:2011-02-12 14:25:37

标签: filesystems windows-installer runonce

在软件安装过程中,我需要在下次重启后运行一些代码。为此,我在此注册表项下放置了一个指向EXE的链接:

SOFTWARE \微软\的Windows \ CurrentVersion \的RunOnce

我的问题是,我应该把EXE放在哪里?运行后不需要EXE,安装程序不会在Program Files下创建任何文件夹。将它置于%TEMP%之下是否安全?我担心,当Windows重新启动时,可能会清除%TEMP%并删除EXE。我可以在Program Files下创建一个文件夹并将其放在那里但是文件夹将在它运行一次之后永远保留在那里。

任何推荐的行为?

2 个答案:

答案 0 :(得分:1)

您可以查看受欢迎的安装程序如何执行此操作(installshield?),或者您可以选择快速解决方案,例如将文件放在%APPDATA%中。

当然,最好的选择是编写一个不需要重启的安装程序,或者至少在重启后不需要再运行一次。 ; - )

答案 1 :(得分:1)

由于你要求推荐的bevahior,你应该首先尝试避免重启和重启后的exe。您能否共享信息以便对重构提出建议?

这需要每个用户运行一次还是只运行一次? (你没有陈述HKEY_CURRENT_USER或HKEY_LOCAL_MACHINE)

如果只有一次,你怎么知道下一个用户会有管理员权限?如果每个用户一次,您不希望EXE长时间坚持以确保有一天登录的人可以使用它吗?

无论哪种方式,我建议在没有这种模式的情况下找到你需要做的事情,即使这意味着改变应用程序设计以实现它。