SystemSetupInfo Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Fornisce una proprietà e un evento che descrivono la fase corrente nel ciclo di vita dell'esperienza predefinita (OOBE).
public ref class SystemSetupInfo abstract sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 458752)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class SystemSetupInfo final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 458752)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public static class SystemSetupInfo
Public Class SystemSetupInfo
- Ereditarietà
- Attributi
Requisiti Windows
Famiglia di dispositivi |
Windows 10, version 1809 (è stato introdotto in 10.0.17763.0)
|
API contract |
Windows.Foundation.UniversalApiContract (è stato introdotto in v7.0)
|
Esempio
Un'app piattaforma UWP (Universal Windows Platform) (UWP) deve sapere se OOBE è completa, poiché ha un comportamento speciale durante OOBE (ad esempio, una funzionalità con ambito impostata nell'interfaccia utente) o attività in background che iniziano solo dopo il completamento dell'OOBE. Come OEM, questa potrebbe essere l'app in esecuzione durante L'OOBE.
private bool ShouldUseSimpleUserInterface()
{
var oobeState = Windows.System.Profile.SystemSetupInfo.OutOfBoxExperienceState;
// When this UWP is shown before OOBE is complete, use a simplified UI
// with limited options, which matches the style of the rest of OOBE.
return (oobeState != SystemOutOfBoxExperienceState.Completed);
}
Come OEM, si vuole sapere che un dispositivo viene avviato correttamente in OOBE durante i test di fabbrica. Si vuole che ogni dispositivo passi questo test come passaggio di verifica finale nel processo di produzione e quindi durante l'automazione si vuole ricevere una notifica quando OOBE è in corso e pronto.
// Task that has its result set once OOBE is in progress.
private TaskCompletionSource<object> oobeInProgress;
// Called when OOBE state changes. Guaranteed to be called at least once, at
// the time of event registration.
private void OnOobeStateChanged(object sender, object e)
{
var oobeState = Windows.System.Profile.SystemSetupInfo.OutOfBoxExperienceState;
if (oobeState == SystemOutOfBoxExperienceState.InProgress)
{
oobeInProgress.TrySetResult(null);
}
}
private async void WaitForOobeStartedAsync()
{
oobeInProgress = new TaskCompletionSource<object>();
Windows.System.Profile.SystemSetupInfo.OutOfBoxExperienceStateChanged += OnOobeStateChanged;
await oobeInProgress.Task; // NOTE: you could add a timeout here, and fail when hit.
Windows.System.Profile.SystemSetupInfo.OutOfBoxExperienceStateChanged -= OnOobeStateChanged;
}
Commenti
L'esperienza out-of-box (OOBE) è il flusso che si verifica la prima volta che l'utente attiva un dispositivo Windows 10. L'OOBE ottiene l'accettazione dell'EULA, imposta le impostazioni locali predefinite del sistema e consente di configurare l'account utente iniziale.
Proprietà
OutOfBoxExperienceState |
Ottiene un valore che rappresenta la fase corrente nel ciclo di vita dell'esperienza predefinita (OOBE). |
Eventi
OutOfBoxExperienceStateChanged |
Generato quando la fase corrente nel ciclo di vita dell'esperienza predefinita (OOBE) cambia. |