CoreApplication.RequestRestartForUserAsync(User, String) Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mulai ulang aplikasi dalam konteks pengguna yang berbeda.
public:
static IAsyncOperation<AppRestartFailureReason> ^ RequestRestartForUserAsync(User ^ user, Platform::String ^ launchArguments);
/// [Windows.Foundation.Metadata.RemoteAsync]
static IAsyncOperation<AppRestartFailureReason> RequestRestartForUserAsync(User const& user, winrt::hstring const& launchArguments);
[Windows.Foundation.Metadata.RemoteAsync]
public static IAsyncOperation<AppRestartFailureReason> RequestRestartForUserAsync(User user, string launchArguments);
function requestRestartForUserAsync(user, launchArguments)
Public Shared Function RequestRestartForUserAsync (user As User, launchArguments As String) As IAsyncOperation(Of AppRestartFailureReason)
Parameter
- user
- User
Pengguna untuk memulai ulang aplikasi sebagai.
- launchArguments
-
String
Platform::String
winrt::hstring
Argumen yang akan diteruskan ke instans yang dimulai ulang.
Mengembalikan
Status permintaan hidupkan ulang.
- Atribut
Persyaratan Windows
Rangkaian perangkat |
Windows 10 Fall Creators Update (diperkenalkan dalam 10.0.16299.0)
|
API contract |
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v5.0)
|
Contoh
private async void RestartAsAnotherUser(string selectedUser)
{
IReadOnlyList<User> users = await User.FindAllAsync();
foreach (User user in users)
{
object accountProperty =
await user.GetPropertyAsync(KnownUserProperties.AccountName);
string accountName = (string)accountProperty;
if (accountName == selectedUser)
{
// Attempt restart, with arguments.
AppRestartFailureReason result = await App.RequestRestartForUserAsync(
user, "-fastInit -mainMenu");
// Restart request denied, tell the user to restart manually.
if (result== AppRestartFailureReason.InvalidUser)
{
SendToast(string.Format("Could not restart as user {0} - please manually restart.", user));
}
}
}
}
Keterangan
- Aplikasi harus terlihat dan latar depan saat memanggil API ini.
- Jika hidupkan ulang gagal, tetapi pengguna kemudian meluncurkan aplikasi secara manual, aplikasi akan diluncurkan secara normal dan tidak ada argumen hidupkan ulang yang akan diteruskan.
- Jika aplikasi tidak diluncurkan dengan cara normal, tetapi diluncurkan oleh kontrak berbagi, pemilih file, layanan aplikasi, dan sebagainya, aplikasi tidak boleh memanggil API ini karena pengguna tidak akan mengharapkan perilaku yang dihasilkan.
- Aplikasi ini bertanggung jawab untuk memastikan validitas objek Pengguna . Aktivasi akan gagal jika ada kebijakan yang mencegah pengguna tersebut menjalankan aplikasi.
- Aplikasi tidak boleh meminta sesi Extended Execution setelah memanggil API ini karena akan mengakibatkan pengalaman pengguna yang buruk.
- Jika aplikasi memiliki tugas latar belakang dalam proses yang berjalan saat memanggil API ini, tugas tersebut akan dibatalkan dengan cara normal. Tugas latar belakang di luar proses tidak akan terpengaruh.
- Saat aplikasi dimulai ulang, LaunchActivatedEventArgs.PreviousExecutionState akan memiliki nilai Dihentikan sehingga aplikasi dapat membedakan antara resume dan restart.
Berlaku untuk
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk