Partager via


CoreApplication.RequestRestartAsync(String) Méthode

Définition

Redémarrez l’application.

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)

Paramètres

launchArguments
String

Platform::String

winrt::hstring

Arguments à passer au instance redémarré.

Retours

Status de la demande de redémarrage.

Attributs

Configuration requise pour Windows

Famille d’appareils
Windows 10 Fall Creators Update (introduit dans 10.0.16299.0)
API contract
Windows.Foundation.UniversalApiContract (introduit dans v5.0)

Exemples

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.");
    }
}

Remarques

  • L’application doit être visible et au premier plan quand elle appelle cette API.
  • Si le redémarrage échoue, mais que l’utilisateur lance ensuite l’application manuellement, l’application se lance normalement et aucun argument de redémarrage n’est transmis.
  • Si l’application n’a pas été lancée de la manière normale, mais qu’elle a été lancée par un contrat de partage, un sélecteur de fichiers, un service d’application, etc., l’application ne doit pas appeler cette API, car l’utilisateur ne s’attend pas au comportement résultant.
  • L’application ne doit pas demander une session d’exécution étendue après avoir appelé cette API, car cela entraîne une expérience utilisateur médiocre.
  • Si l’application a des tâches en arrière-plan in-process en cours d’exécution lorsqu’elle appelle cette API, ces tâches sont annulées normalement. Les tâches en arrière-plan hors processus ne seront pas affectées.
  • Lorsque l’application est redémarrée, LaunchActivatedEventArgs.PreviousExecutionState aura la valeur Terminée afin que l’application puisse faire la distinction entre un CV et un redémarrage.

S’applique à

Voir aussi