Удаление приложений UWP от всех пользователей не работает должным образом - PullRequest
0 голосов
/ 20 июня 2019

Я хотел бы создать небольшое приложение на C #, которое выполняет определенные функции, включая удаление встроенных современных приложений в Windows 8/10.Когда я пытаюсь с командой PowerShell, она работает отлично.В C # он также удаляет плитки, но только от текущего пользователя.

Рабочий код в PS:

Get-AppxPackage -AllUsers | Remove-AppxPackage

И код в C #, который не работает должным образом:

using System.Management.Automation;

namespace RemoveAppxPackages
{
    class RemoveAppxPackages
    {
        static void Main(string[] args)
        {
            PowerShell ps = PowerShell.Create();
            ps.AddCommand("Get-AppxPackage").AddParameter("AllUsers");
            ps.AddCommand("Remove-AppxPackage");
            ps.Invoke();
        }
    }
}

Таким образом, выполнение команды PS выполнит работу, удалив приложения из всех пользователей, даже если профиль пользователя создан после выполнения команды.Если я попытаюсь с C #, он будет работать без каких-либо ошибок.Странно то, что он должен работать от имени администратора из-за параметра AllUsers, но, похоже, он просто игнорирует этот параметр.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...