不确定这是否是好的做法,但请耐心等待。
我有一个带有新版本应用程序的 url,我不想使用任何更新工具来执行此操作。
我有 2 个应用程序。1 应用程序下载最新版本的应用程序,将其称为“更新程序”控制台应用程序。另一个应用程序是“MainApp”。我想从 MainApp 调用 Updater 应用程序以用下载的应用程序替换 MainApp。
MessageBox.Show("We need to update the application. This might take a short while");
System.Diagnostics.Process updateProcess = new System.Diagnostics.Process();
updateProcess.StartInfo.FileName = AppDomain.CurrentDomain.BaseDirectory + "Updater.exe";
updateProcess.StartInfo.Arguments = AppDomain.CurrentDomain.BaseDirectory;
updateProcess.Start();
Process.GetCurrentProcess().Kill();
//Application.Exit();
Updater 应用程序从传递给 MainApp 工作目录的 args 中获取文件的新版本并保存,代码如下
client.BaseUrl = base_url + "MainApp.exe";
var request = new RestRequest(Method.GET);
byte[] responseData = client.DownloadData(request);
System.IO.File.WriteAllBytes(args[0] + "MainApp.exe", responseData);
这似乎不太奏效。它不会覆盖应用程序!
有什么建议么?