CoreApplication.RequestRestartAsync(String) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
重新啟動應用程式。
public:
static IAsyncOperation<AppRestartFailureReason> ^ RequestRestartAsync(Platform::String ^ launchArguments);
/// [Windows.Foundation.Metadata.RemoteAsync]
static IAsyncOperation<AppRestartFailureReason> RequestRestartAsync(winrt::hstring const& launchArguments);
[Windows.Foundation.Metadata.RemoteAsync]
public static IAsyncOperation<AppRestartFailureReason> RequestRestartAsync(string launchArguments);
function requestRestartAsync(launchArguments)
Public Shared Function RequestRestartAsync (launchArguments As String) As IAsyncOperation(Of AppRestartFailureReason)
參數
- launchArguments
-
String
Platform::String
winrt::hstring
要傳遞至重新開機實例的引數。
傳回
重新開機要求的狀態。
- 屬性
Windows 需求
裝置系列 |
Windows 10 Fall Creators Update (已於 10.0.16299.0 引進)
|
API contract |
Windows.Foundation.UniversalApiContract (已於 v5.0 引進)
|
範例
private async void DoMajorAppReconfiguration()
{
// Attempt restart, with arguments.
AppRestartFailureReason result =
await CoreApplication.RequestRestartAsync("-fastInit -level 1 -foo");
// Restart request denied, send a toast to tell the user to restart manually.
if (result == AppRestartFailureReason.NotInForeground
|| result == AppRestartFailureReason.Other)
{
SendToast("Please manually restart.");
}
}
備註
- 應用程式在呼叫此 API 時必須可見且前景。
- 如果重新開機失敗,但使用者後續會手動啟動應用程式,則應用程式會正常啟動,而且不會傳遞任何重新開機引數。
- 如果應用程式未以正常方式啟動,但是由共用合約、檔案選擇器、應用程式服務等啟動,則應用程式不應該呼叫此 API,因為使用者不會預期產生的行為。
- 應用程式在呼叫此 API 之後不應該要求擴充執行會話,因為這會導致使用者體驗不佳。
- 如果應用程式在呼叫此 API 時執行任何進程背景工作,這些工作將會以正常方式取消。 跨進程背景工作不會受到影響。
- 重新開機應用程式時, LaunchActivatedEventArgs.PreviousExecutionState 的值會終止 ,讓應用程式 可以區分繼續和重新開機。