应用程序更新安装失败File.Copy

时间:2015-07-15 15:35:18

标签: c# wpf

我正在尝试为我的应用实现更新功能。

除了正在安装更新的第二个应用程序(将新文件复制到旧文件)之外,其他所有内容都正在运行,因为它由另一个进程使用。 有谁知道我怎么能解决这个问题?此致

主要申请代码

    private void _installTimer_Tick(object sender, EventArgs e) {
                installCount++;
                lblDownloadStatus.Content = "Update wird installiert...";
                if (installCount == 3) {
                    lblDownloadedSize.Visibility = Visibility.Collapsed;
                    progressBarUpdate.Visibility = Visibility.Collapsed;
                    progressBarInstall.Visibility = Visibility.Visible;
// starts the update Application
                    var inWatchUpdater = AppDomain.CurrentDomain.BaseDirectory + "inWatchUpdater.exe";
                    if (File.Exists(inWatchUpdater)) {
                        Process.Start(inWatchUpdater);
                        Application.Current.Shutdown();
                    }
                    else {
                        MessageBox.Show("cant find file");
                    } 
                }
            }

更新应用程序代码:

  static string _inWatchTempFile = Path.Combine(Environment.GetFolderPath(
                    Environment.SpecialFolder.ApplicationData) + "\\inWatch\\update\\inWatchUpdateTemp.exe");
                static string _inWatchCurrent = AppDomain.CurrentDomain.BaseDirectory + "InWatch.exe";

    static void updateApplication() {

    if(File.Exists(_inWatchTempFile) && 
        File.Exists(_inWatchCurrent)) {

        File.Copy(_inWatchTempFile, _inWatchCurrent, true);

        if (File.Exists(_inWatchCurrent)) {
            Process.Start(_inWatchCurrent);
        }
    }
    else {
        Console.WriteLine("Files doesnt exist");
    }
}

0 个答案:

没有答案