2

Application.Restart() に相当するコンソール アプリケーションを探していますが、これを行う方法が見つからないようです。

再起動する必要がある場合は、単に Args を使用して Sub Main を呼び出すことを他の人から提案されています。ただし、アプリケーションを物理的に再起動する機能が必要な理由は、最初に更新を確認し、利用可能な場合はインストールするためです。

更新技術自体は完全に機能し、システムは新しい更新をインストールしますが、変更は次回アプリケーションが実行されるまで有効になりません。

アプリケーションはスケジュールされたタスクとして週に 1 回だけバッチ ファイルから実行されるため、リリースした更新は 2 週間有効になりません。

Windowsフォームアプリケーションでも同じ問題がありましたが、Application.Restartを呼び出す機能により、変更をすぐに行うことができます。コンソール アプリケーションを作成するときに同じことを実現できますか?

4

1 に答える 1

1

2 私が考える可能性。

最初に、アプリケーションの別のインスタンスを開始し、次のようなものを使用して現在のインスタンスを閉じます

System.Diagnostics.Process.Start(ProcessStartInfo startInfo)

Environment.Exit(int exitCode)

次に、何らかの理由で 2 つのインスタンスを同時に実行できない場合は、バッチによって開始される別のアプリケーションを作成できます。アプリケーションを実行し、更新プロセスが完了した場合に情報を取得できるようにして、最初に現在のアプリケーションを閉じてから別のアプリケーションを実行できるようにします

于 2012-09-28T13:42:20.497 に答える