在NTFS上重命名目标文件后,如何防止快捷路径被修改?



上下文如下:有一个程序需要在必要时自行更新。我们的想法是重命名当前可执行文件,下载新文件,将其按正常命名放置,然后删除重命名的文件。但是所有链接到原始程序的快捷方式都会自动修改,以遵循新的路径。从而使它们在更新后无效。有办法防止这种行为吗?程序是c# . net Framework可执行的。

我认为最好的方法是在一个新进程中由另一个可执行文件进行更新,这个进程不是你的子进程。只需先下载更新,然后让更新进程从一个单独的进程复制新的exe文件。

我在这里看到了这样做的讨论:链接

基本上有三个组成部分:

  • 一个启动器,检查更新并启动主可执行文件
  • 要替换的主应用程序可执行文件
  • 一个单独的可执行更新程序,用于执行所需的更新。

最新更新