DeploymentManager.Repair Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Пытается восстановить среду выполнения Windows App SDK независимо от ее состояния. По этой причине, чтобы избежать восстановления, когда среда выполнения Windows App SDK находится в хорошем состоянии, следует вызывать этот API только в том случае, если состояние развертывания не в порядке.
Все сведения о необходимой версии, канале и архитектуре извлекаются из текущего пакета Windows App SDK Framework.
public:
static DeploymentResult ^ Repair();
static DeploymentResult Repair();
public static DeploymentResult Repair();
function repair()
Public Shared Function Repair () As DeploymentResult
Возвращаемое значение
Комментарии
Так как пакеты Main и Singleton будут восстановлены, возможно, восстановление основного пакета завершится сбоем и Инициализация возвращается с состоянием PackageRepairFailed. Или возможно, что основной пакет успешно восстановлен, но восстановление одноэлементного пакета завершается сбоем, и функция Initialize возвращается с состоянием PackageRepairFailed. В обоих случаях возвращенный объект WindowsAppRuntimeStatus будет содержать ошибку первого сбоя восстановления пакета. Откат всех успешно исправленных пакетов не будет выполнен. Сведения об обработке ошибок см. в разделе Устранение ошибок установки.
if (DeploymentManager.GetStatus().Status == DeploymentStatus.PackageRepairRequired ||
DeploymentManager.GetStatus().Status == DeploymentStatus.Unknown)
{
// Repair will always attempt to repair the Windows App SDK runtime regardless of its state.
// Repair can sometimes take several seconds to deploy the packages.
// These should be run on a separate thread so as not to hang your app while the
// packages deploy.
var repairTask = Task.Run(() => DeploymentManager.Repair());
// ...do other work while the repair is running...
repairTask.Wait();
// Check the result.
if (repairTask.Result.Status != DeploymentStatus.Ok)
{
// The Repair has failed.
// Do error reporting or gather information for submitting a bug.
// Gracefully exit the program or carry on without using the Windows App SDK runtime.
}
}
Применяется к
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по