none
Bug при удалении Metro/Modern App приложений через GPO RRS feed

  • Вопрос

  • Не получается автоматически удалить Metro приложения через GPO.

    В Computer Configuration на запуске скрипта стоит этот батник del.bat:

    for /F "tokens=*" %%i in ('powershell "(Get-AppxProvisionedPackage -online).Count"') do set Count=%%i
    IF %Count% GTR 0 (
        powershell "Get-AppxProvisionedPackage -online | Remove-AppxProvisionedPackage -online"
    )

    Но при запуске компьютера он не срабатывает:

    Get-AppxProvisionedPackage : Сбой DismOpenSession. Код ошибки: 0x80040154
    строка:1 знак:2
    + (Get-AppxProvisionedPackage -online).Count
    +  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : NotSpecified: (:) [Get-AppxProvisionedPackage], COMException
        + FullyQualifiedErrorId : Microsoft.Dism.Commands.GetAppxProvisionedPackageCommand

    Если запустить локально, то все отрабатывает!

    Как с помощью bat удалить приложения Metro через GPO? Почему не работает bat файл?

    26 февраля 2014 г. 2:11

Ответы

  • [IntPtr]::Size - добавить в скрипт PowerShell, а не в bat файл

    Как вариант попробуйте без PowerShell:

    for /F "tokens=3" %%i in ('dism /Online /Get-ProvisionedAppxPackages ^| findstr "_~_"') do ( 
    	dism /Online /Remove-ProvisionedAppxPackage /PackageName:%%i
    )

    • Помечено в качестве ответа pavel..b 26 февраля 2014 г. 10:01
    26 февраля 2014 г. 8:06
    Отвечающий

Все ответы

  • Не получается автоматически удалить Metro приложения через GPO.

    В Computer Configuration на запуске скрипта стоит этот батник del.bat:

    for /F "tokens=*" %%i in ('powershell "(Get-AppxProvisionedPackage -online).Count"') do set Count=%%i
    IF %Count% GTR 0 (
        powershell "Get-AppxProvisionedPackage -online | Remove-AppxProvisionedPackage -online"
    )

    Но при запуске компьютера он не срабатывает:

    Get-AppxProvisionedPackage : Сбой DismOpenSession. Код ошибки: 0x80040154
    строка:1 знак:2
    + (Get-AppxProvisionedPackage -online).Count
    +  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : NotSpecified: (:) [Get-AppxProvisionedPackage], COMException
        + FullyQualifiedErrorId : Microsoft.Dism.Commands.GetAppxProvisionedPackageCommand

    Если запустить локально, то все отрабатывает!

    Как с помощью bat удалить приложения Metro через GPO? Почему не работает bat файл?


    • Изменено pavel..b 19 февраля 2014 г. 5:19
    • Объединено Elina LebedevaModerator 26 февраля 2014 г. 10:15 Дублирование
    19 февраля 2014 г. 5:15
  • 20 февраля 2014 г. 11:23
  • Ну во первых с помощью bat.
    Во вторых я и так использую powershell внутри bat.
    В третьих DISM выкидывает в ошибку при определении ПО. Думаю это прямой баг MS.
    Почему сама MS молчит по этому поводу?

    • Изменено pavel..b 25 февраля 2014 г. 2:19
    25 февраля 2014 г. 2:11
  • Может вам в раздел скриптинга?

    Был бы баг, кто-то бы уже пожаловался. MS на этом форуме нет.

    Кстати online писать вроде не нужно

    How to fully uninstall a Windows Store app?

    Can we run a DOS command / .bat file in Metro App

    • Изменено Happy_hippie 25 февраля 2014 г. 7:56
    25 февраля 2014 г. 7:38
  • В том-то и дело что скрипт рабочий. От администратора если запускать все работает.

    >в раздел скриптинга
    могу продублировать, только где он?

    >MS на этом форуме нет.
    Поражает их позиция. Инфы по данному багу нет. Баг трекера нет, общаются только за деньги.


    • Изменено pavel..b 25 февраля 2014 г. 7:54
    25 февраля 2014 г. 7:54
  • Это в серверных тут, Windows scripting

    25 февраля 2014 г. 7:59
  • 0x80040154 (REGDB_E_CLASSNOTREG) - Класс не зарегистрирован

    Возможно, что запускается 32-х битная версия PowerShell и возникают проблемы. Добавьте в скрипт и приведите вывод:

    [IntPtr]::Size
    Dism /online /Get-ProvisionedAppxPackages  

    26 февраля 2014 г. 5:08
    Отвечающий
  • [IntPtr]::Size
    такой команды нет
    Dism /online /Get-ProvisionedAppxPackages  
    отрабатывает нормально отображая все установленные пакеты
    26 февраля 2014 г. 7:48
  • [IntPtr]::Size - добавить в скрипт PowerShell, а не в bat файл

    Как вариант попробуйте без PowerShell:

    for /F "tokens=3" %%i in ('dism /Online /Get-ProvisionedAppxPackages ^| findstr "_~_"') do ( 
    	dism /Online /Remove-ProvisionedAppxPackage /PackageName:%%i
    )

    • Помечено в качестве ответа pavel..b 26 февраля 2014 г. 10:01
    26 февраля 2014 г. 8:06
    Отвечающий
  • Я не использую скрипты PowerShell, пока нет возможности, только команды из bat.

    Через dsim всё работает!

    Хотел потихоньку переходить на powershell, но похоже слишком рано - сырой!

    Спасибо за прояснение с powershell.
    26 февраля 2014 г. 10:01