如何重命名当前在c#中运行的文件?

如何重命名当前在c#中运行的文件?,c#,C#,因此,基本上我希望能够自己重命名文件应用程序,而不说应用程序正在运行的错误,因此无法重命名它。有可能吗?一种方法: 假设实际的exe名为file.exe 有另一个名为file_launcher.exe的程序-其任务是检查file.exe及其自身名称(下划线前的字符串)是否相同 如果没有,则会相应地重命名文件.exe 然后启动实际的exe(使用新名称) 实际exe当必须重命名自身时,实际重命名启动程序文件(更新名称的第一部分) 在Windows上-文件被锁定,因为进程正在运行。您可以使用启动器类

因此,基本上我希望能够自己重命名文件应用程序,而不说应用程序正在运行的错误,因此无法重命名它。有可能吗?

一种方法: 假设实际的exe名为file.exe

  • 有另一个名为file_launcher.exe的程序-其任务是检查file.exe及其自身名称(下划线前的字符串)是否相同
  • 如果没有,则会相应地重命名文件.exe
  • 然后启动实际的exe(使用新名称)
  • 实际exe当必须重命名自身时,实际重命名启动程序文件(更新名称的第一部分)

在Windows上-文件被锁定,因为进程正在运行。您可以使用启动器类型的方法。与其直接使用exe,不如使用启动器exe。Launcher将检查它自己的名称是否与实际的exe相似,如果不是,它将重命名它。从运行的代码(即实际的exe)中,您可以重命名启动器。您为什么要这样做?@MichaelRandall它是一个引导程序,因此它可以下载新文件并替换为新文件感谢您的时间和帮助,我尝试了它,它正在工作!