次の方法で共有


CoreApplication.RequestRestartAsync(String) メソッド

定義

アプリを再起動します。

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 を呼び出すときは、アプリを表示してフォアグラウンドにする必要があります。
  • 再起動に失敗したが、ユーザーが後でアプリを手動で起動した場合、アプリは正常に起動し、再起動引数は渡されません。
  • アプリが通常の方法で起動されなかったが、共有コントラクト、ファイル ピッカー、app-service などによって起動された場合、ユーザーは結果の動作を期待しないため、アプリはこの API を呼び出さないでください。
  • この API を呼び出した後、アプリは拡張実行セッションを要求しないでください。これにより、ユーザー エクスペリエンスが低下するためです。
  • アプリでこの API を呼び出すときに実行中のインプロセス バックグラウンド タスクがある場合、それらのタスクは通常どおり取り消されます。 プロセス外のバックグラウンド タスクは影響を受けません。
  • アプリが再起動されると、 LaunchActivatedEventArgs.PreviousExecutionState の値は Terminated になり、アプリは再開と再起動を区別できます。

適用対象

こちらもご覧ください