6

Windows 8 は、インストールされているアプリの更新されたパッケージをダウンロードするため、最新のパッケージへの更新プロセスがよりスムーズになります。残念ながら、アプリをアンインストールしても、これらの「段階的」アプリ パッケージが常に削除されるわけではありません。

さらに、それらは別のユーザーによってインストールされているため、アクセスできません。Powershell から「Remove-AppxPackage」を呼び出してそれらを削除することさえできません。

これが問題である理由は、Windows ストア アプリの開発に使用している Surface RT があるためです。"パッケージ化されていない" アプリケーションが既にシステムにインストールされている場合、現在実行中のユーザーにのみインストールされていない限り、Visual Studio はそのアプリケーションを上書きできません。これは残念ながら、ストアからのアプリの受信もテストしており、自分のアプリの段階的なパッケージがある場合、自分のアプリを Surface に展開できないことを意味します。エラーが発生します

Error : DEP0700 : Registration of the app failed. Another user has already 
installed a packaged version of this app. An unpackaged version cannot 
replace this. The conflicting package is [MyProjectName] and it was 
published by [MyCertificate]. (0x80073cf9)

これらの段階的パッケージを Windows RT デバイスから削除するにはどうすればよいですか?

4

4 に答える 4

8

この以前の質問で概説したように、それを行うにはいくつかの方法があります。重要なのは、 Powershellを として実行する必要があることです。Sysinternals には、これを可能にするツールがあります。残念ながら、ARM 用にコンパイルされていないため、Surface RT (または任意の ARM デバイス) では実行できません。これに加えて、システム アカウントとしてコマンドを実行すること自体も非常に困難です。Remove-AppxPackagecmdletSystempsexec

幸いなことに、あまり手間をかけずにこれを行う方法があります (このガイドをお持ちでない場合は、面倒な世界に備えてください ;)。0 に進みます) デプロイの失敗を引き起こしているのが本当にステージングされたアプリ パッケージであることを確認します。1) タスクをスケジュールします。2) システム アカウントを使用するように設定します。3) アクションを適切なコマンドに設定します。4) タスクがオンデマンドで実行できることを確認します。5) タスクを実行します。6) アプリ パッケージがインストールされていないことを確認します。

問題の Windows RT デバイスで管理者アクセスが必要になります。

0) ステージングされたアプリが実際に失敗の原因であることを確認してください。

  • として実行PowershellAdministratorます。これを行うには、実行可能ファイルを右クリックするか、スタート画面タイルを上にスワイプして をタップしRun as Administratorます。

  • コマンド「Get-AppxPackage -all」を実行します。これには少し時間がかかり、すべてのユーザーのインストール済みアプリ パッケージがすべて表示されます。

  • 探しているのは、アプリの名前を持つアプリ パッケージです。「XXXXXXX.MyApp」のようなもの。説明の下部近くにあるInstallStateを探します。もなりStagedます。UserUnknown

  • 現在インストールされているアプリのバージョンがない場合、これは問題ではありません。

1) タスクをスケジュールします。

  • スタート画面で、「タスクのスケジュール」を開きます。管理ツールからもアクセスできると思います。また、タスク スケジューラ サービスが現在実行されていることも確認する必要があります。

  • 右側で、[タスクの作成...] をクリックまたはタップします。

  • 「ステージングされたパッケージの削除」など、タスクに簡単な名前を付けます

2) システム アカウントを使用するように設定する

  • Generalタブの中央のすぐ下、の上部にSecurity optionsある というボタンをクリックしますChange User or Group...。これにより、タスクのコンテキストを設定するためのダイアログが表示されます。

  • 「システム」と入力し、「名前の確認」をクリックします。SYSTEMに下線を付け、すべて大文字にする必要があります。

  • [OK] をクリックします。ユーザー アカウントはNT AUTHORITY\SYSTEM.

3) アクションを適切なコマンドに設定します。

  • 上部の [アクション] タブに移動します。「新規」をクリックします。

  • デフォルトのアクションは ですStart a program。正解です。

  • ボタンをクリックしてBrowse...、 に移動しC:\Windows\System32\WindowsPowerShell\v1.0\powershell.exeます。

  • Add Arguments (optional):フィールドに、すべての引用符を含めて次のように入力し-c "get-appxpackage | remove-appxpackage"ます。|キャラクターは「パイプ」のキャラクター。である必要がありますSHFT+\(Shift とバックスラッシュ、 のすぐ上Enter)。

  • クリックOK

4) タスクがオンデマンドで実行できることを確認します。

  • Conditionsタブで、これは実際には必要ありませんが、煩わしさは少ないのチェックを外しますStart the task only if the computer is on AC power.

  • Settingsタブで、 がチェックされていることを確認しますAllow task to be run on demand。デフォルトである必要がありますが、確認することをお勧めします。

  • 下部をクリックOKします。

5) タスクを実行します。

  • 左ペインで、 をクリックしますTask Scheduler Library。これにより、中央のペインが更新され、新しいタスクが含まれます。

  • Statusであることを確認してくださいReady。以前に実行されたことはありません。

  • リスト内のタスクをクリックします。の下の右側のActionsペインでSelected Item、 をクリックしますRun

  • 実際の動作を見たい場合は、 をクリックしてくださいDisplay All Running Tasks。現在実行中の時間を確認できます。[更新] は繰り返しクリックできます。タスクが消えたら完了です。

  • Task Scheduler Library右側のペインのセクションで [更新] をクリックします。タスクにLast Run Timeはごく最近の があり、 は であるLast Run Result必要がありますThe operation completed successfully. (0x0)

6) アプリ パッケージがインストールされていないことを確認します。

  • 基本的に、手順 を繰り返し0)ます。として実行PowershellAdministratorます。コマンドを実行しますGet-AppxPackage -allStagedパッケージがまだインストールされているかどうかを確認します。そうであってはなりません。

これで完了です。アプリ パッケージを Windows RT デバイスに展開できるはずです。

于 2013-07-24T19:44:24.817 に答える
1

Sysprep が失敗したとき、これはうまくいきました。幸いなことに、それは VM (チェックポイント) にありました。

[get-appxpackage | get-appxpackage |] も実行しました。上記のタスクを実行した後、PowerShell 自体から [remove-appxpackage] を削除します。

ありがとうございました。

キーワード:

Microsoft.Media.PlayReadyclient Microsoft.VCLibs.

于 2016-07-21T20:31:56.683 に答える