web-dev-qa-db-ja.com

EclipseWTPで「WindowsUpdateDiagnostic.diagcab」の応答ファイルを作成する

WindowsUpdateDiagnostic.diagcabここから入手 のインストールをスクリプト化しようとしています。

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

残念ながら、応答ファイルを作成する試みは失敗したようです。

enter image description here

0x80092003ではあまり見つかりません。私はanswers.xmlの例を期待しています。答えを偽装して、それを機能させることができます。

これがテンプレートですが、運が悪かったです。

<Answers>

  <Interaction ID="IT_Theme">

  <Value>Nature</Value>

  </Interaction>

</Answers>

出典: https://msdn.Microsoft.com/en-us/library/dd776530.aspx#CommandLineAdministration

前もって感謝します。

3
semtex41

PowerShellでGet-TroubleshootingPack( https://msdn.Microsoft.com/en-us/library/dd323716(v = vs.85).aspx )コマンドレットを使用して、応答ファイルを作成できます。 :

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

(.diagcabファイルではなく、%systemroot%(通常はC:\ Windows)にある既存のトラブルシューティングへのパスを使用することに注意してください。diagcabファイルを使用して応答ファイルを作成できませんでした)。

これで1つの質問が表示され、「1 [Enter]」と入力して「修正を適用」と答えます。次に、次の行だけを含む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

... C:\ WUDResultに3つ以上のファイルを作成する必要があります(必要に応じてパスを変更してください)。

推奨される解決策は理論的には正しいですが、WindowsUpdateDiagnostic.diagcabでは機能しません。これは1つのdiagcabキャビネットファイルに2つのWTPパッケージが含まれているためです。

  1. したがって、expand.exe、7Zipなどを使用してdiagcabファイルをc:\ wud \に展開してください。
  2. 次に、昇格された特権でPowershellを実行します(右クリック/管理者として実行)
  3. 「Import-ModuleTroubleshootingPack」と入力します
  4. 次に、前述のソリューションを引き続き使用します。つまり、「Get-TroubleshootingPack C:\ wud\BitsDiagnostic -AnswerFile c:\ wud\answer_bits.xml」を実行します。
  5. および「Get-TroubleshootingPackC:\ wud\windowsupdatediagnostic-AnswerFile c:\ wud\answer_wud.xml」

これで、2つの応答ファイルと対応するディレクトリ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

2つの応答ファイルとmsdt.exeを使用した「multi-diagcab」を使用して作成できるかどうかはわかりません...おそらくそうではありません。

3
Gizmo0001