CoreApplication.RequestRestartAsync(String) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Reinicie la aplicación.
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)
Parámetros
- launchArguments
-
String
Platform::String
winrt::hstring
Argumentos que se van a pasar a la instancia reiniciada.
Devoluciones
Estado de la solicitud de reinicio.
- Atributos
Requisitos de Windows
Familia de dispositivos |
Windows 10 Fall Creators Update (se introdujo en la versión 10.0.16299.0)
|
API contract |
Windows.Foundation.UniversalApiContract (se introdujo en la versión v5.0)
|
Ejemplos
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.");
}
}
Comentarios
- La aplicación debe estar visible y en primer plano cuando llama a esta API.
- Si se produce un error en el reinicio, pero el usuario inicia la aplicación manualmente, la aplicación se iniciará normalmente y no se pasarán argumentos de reinicio.
- Si la aplicación no se inició de forma normal, pero se inició mediante un contrato de recurso compartido, un selector de archivos, app-service, etc., la aplicación no debe llamar a esta API porque el usuario no esperará el comportamiento resultante.
- La aplicación no debe solicitar una sesión de ejecución extendida después de haber llamado a esta API, ya que esto provocará una experiencia de usuario deficiente.
- Si la aplicación tiene tareas en segundo plano en proceso que se ejecutan cuando llama a esta API, esas tareas se cancelarán de la manera normal. Las tareas en segundo plano fuera de proceso no se verán afectadas.
- Cuando se reinicia la aplicación, LaunchActivatedEventArgs.PreviousExecutionState tendrá el valor Terminated para que la aplicación pueda distinguir entre un currículum y un reinicio.