3

Я пытаюсь выполнить сценарий установки WindowsUpdateDiagnostic.diagcab поставляемого здесь.

msdt.exe /cab "%~dp0WindowsUpdateDiagnostic.diagcab" -af "%~dp0stillneeded.xml"

К сожалению, попытки создания файла ответов не увенчались успехом:

Не нахожу много на 0x80092003. Я надеюсь, что на примере answers.xml я смогу подделать ответы и заставить их работать.

Вот шаблон, но мне не повезло.

<Answers>

  <Interaction ID="IT_Theme">

  <Value>Nature</Value>

  </Interaction>

</Answers>

Источник: https://msdn.microsoft.com/en-us/library/dd776530.aspx#CommandLineAdministration

Заранее спасибо.

2 ответа2

3

Предлагаемое решение теоретически правильно, но не будет работать с WindowsUpdateDiagnostic.diagcab, потому что оно включает в себя два пакета WTP в одном файле кабинета diagcab.

  1. Поэтому, пожалуйста, раскройте файл diagcab с помощью файла расширения.exe, 7Zip или аналогичного файла в папку c:\wud\
  2. Затем запустите Powershell с повышенными привилегиями (щелкните правой кнопкой мыши / запустите от имени администратора)
  3. тип "Импорт-модуль для устранения неполадок пакета"
  4. затем продолжите использовать ранее заявленное решение, то есть выполните команду «Get-Устранение неполадок пакета C:\wud\BitsDiagnostic -AnswerFile c:\wud\answer_bits.xml»
  5. и «Пакет Get-Устранение неполадок C:\wud\windowsupdatediagnostic -AnswerFile c:\wud\answer_wud.xml»

Теперь у вас есть два файла ответов и соответствующий каталог c:\wud, который можно развернуть и вызвать с помощью

Get-TroubleshootingPack -Path C:\wud\windowsupdatediagnostic | Invoke-TroubleshootingPack -AnswerFile c:\wud\answer_wud.xml -Unattended -Result c:\wud\log_wud

а также

Get-TroubleshootingPack -Path C:\wud\BitsDiagnostic | Invoke-TroubleshootingPack -AnswerFile c:\wud\answer_bits.xml -Unattended -Result c:\wud\log_bits

Я не знаю, можно ли сделать это, используя «multi-diagcab» с двумя файлами ответов и msdt.exe ... Предположительно нет.

2

Вы можете использовать командлет Get-TroubleshootingPack (https://msdn.microsoft.com/en-us/library/dd323716(v=vs.85).aspx) в PowerShell для создания файла ответов:

Get-TroubleshootingPack C:\Windows\Diagnostics\system\WindowsUpdate -AnswerFile c:\WUDAnswers.xml

(Обратите внимание, что он использует путь к существующему средству устранения неполадок в% systemroot% (обычно C:\Windows), а не в файле .diagcab. Я не смог создать файл ответов, используя файл .diagcab).

Это должно просто задать вам один вопрос, и вы набираете «1 [Enter]», чтобы ответить "Apply Fix". Затем вы можете создать скрипт PowerShell (.ps1) только с этой строкой:

Get-TroubleshootingPack -Path C:\Windows\diagnostics\system\WindowsUpdate | Invoke-TroubleshootingPack -AnswerFile c:\WUDAnswers.xml -Unattended -Result c:\WUDResult

И вы можете запустить этот скрипт PowerShell с помощью следующей команды:

powershell -ExecutionPolicy Bypass -file c:\RunWindowsUpdateDiagnostics.ps1

... который должен создать 3 или более файлов в C:\WUDResult (измените пути, как хотите).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .