このページの本文へ

前へ 1 2 次へ

Windows Info 第187回

Windows 10に標準搭載のUWPアプリの中身を掘り下げる

2019年08月25日 11時59分更新

文● 塩田紳二 編集● ASCII編集部

  • この記事をはてなブックマークに追加
  • 本文印刷

 前回は、UWPアプリのパッケージである、Appxに関する基礎的な情報を得る方法を紹介したが、今回は具体的にUWPアプリについて調べていくことにしよう。

 取り上げるのは「メッセージング」アプリとするが、もちろん、各自の好みで調べていただいて構わない。また、今後のバージョンアップなどで、インストール先フォルダー名などが変わる可能性もある。できるだけバージョンには依存しないように記述しているが、パスを含むコマンドは変更に対応する必要がある。

 まずは、インストール先を調べる。Powershell(管理者)で以下のコマンドを実行してみる

(get-appxpackage "*messaging*").installlocation

とすると、インストール先は、

C:\Program Files\WindowsApps\Microsoft.Messaging_4.1901.10241.1000_x64__8wekyb3d8bbwe

であることがわかる。しかし、実際にインストール先フォルダーを調べると名前のよく似た複数のフォルダーがある。

メッセージング(Microsoft.Messaging)のインストール場所を表示させる。しかし、そこには似たような名前のフォルダーが複数ある

 インストール先フォルダーとは、途中部分が違うのみで、先頭と最後の部分が同じだ。これらは、分離されたリソースのフォルダーだ。このうち、「language-ja」という文字列が名前一部にあるフォルダーが日本語関係のリソースを含むフォルダーで、アプリケーションの日本語名はここにある。

 アプリケーションの中では、自分自身の日本語表示名は自分のリソースなので簡単に得られ、スタートメニューにタイルを登録したときに表示される日本語名も、アプリ自身がWindowsに通知して表示させている。ときどき「ms-resource:……」という名前のアプリを見かけるが、これは、名前の取り出しに失敗してリソースを指定するURIが表示されているものだ。この場合、UWPアプリが正しく動作できない状態にある。アプリをリセットするか、再インストールすることで、正しく名前を表示できるようになる。

日本語リソースを取り出す

 さて、この日本語リソースフォルダーを調べてみよう。

「resources.pri」にリソースが入っている。しかし、これはバイナリファイルなのでWindows SDK付属のMakePri.exeでこれをxmlファイル化する

 フォルダー内には、4つのファイルがあるが、リソースは、「resources.pri」というファイルに格納されいる。これは、文字列などのリソースをバイナリ化したpri形式なのでこのままでは読めない。幸い、Windows SDKに付属のMakepri.exeというコマンドでpri形式をxml形式に変換することができる。

 ただし、そのためには、UWPアプリのインストール先フォルダーにあるresource.priファイルも必要になる(蛇足ながらWindows SDKのインストールも必要である)。具体的には、以下のコマンドで、xml化したリソースが得られる。

makepri.exe dump /if リソースフォルダ\resources.pri /es インストール先\resources.pri /of 出力パス

 メッセージングの場合、以下の長いコマンドを使う。

makepri.exe dump /if .\Microsoft.Messaging_4.1901.10241.1000_neutral_split.language-ja_8wekyb3d8bbwe\resources.pri /es .\Microsoft.Messaging_4.1901.10241.1000_x64__8wekyb3d8bbwe\resources.pri /of c:\temp\Microsoft.Messaging.xml

 これで、c:\tempにMicrosoft.Messaging.xmlというファイルができる。このあと、ほかのUWPアプリについても調べたいので、このさい、日本語リソースが取り出せるものは、全部取り出してXMLファイルにしておこう。そのためには、C:\temp\appxpriなどのxmlを保存先フォルダーを予め作成しておき、以下のコマンドをPowershell(要管理者権限)で実行する。

Get-AppxPackage -PackageTypeFilter main | foreach { makepri.exe dump /es (Get-ChildItem "$($_.packageFullName)\resources.pri") /if (Get-ChildItem "$($_.name)*-ja*\resources.pri") /of "c:\temp\$($_.name).xml" }

 なんのことはない、get-AppxPackageで出力されるAppxパッケージオブジェクトの名前から日本語リソースフォルダーとインストール先フォルダー名を作り、そこにあるresources.priに対して、makepri.exeを実行しているだけだ。

 中には日本語リソースフォルダーのないアプリもあるので、途中エラーのようなメッセージが出るが、makepri.exeがエラーでヘルプメッセージを出力しているだけなので問題ない。なお、C:\Program Files\WindowsApps\は、書き込み禁止なので、xmlファイルの保存先(/of)は、必ず書き込み可能なフォルダーを指定しておくこと。

前へ 1 2 次へ

カテゴリートップへ

本記事はアフィリエイトプログラムによる収益を得ている場合があります

この連載の記事

ASCII倶楽部

注目ニュース

  • 角川アスキー総合研究所

プレミアム実機レビュー

ピックアップ
1
KIOXIA(キオクシア) 旧東芝メモリ microSD 128GB UHS-I Class10 (最大読出速度100MB/s) Nintendo Switch動作確認済 国内サポート正規品 メーカー保証5年 KLMEA128G
KIOXIA(キオクシア) 旧東芝メモリ microSD 128GB UHS-I Class10 (最大読出速度100MB/s) Nintendo Switch動作確認済 国内サポート正規品 メーカー保証5年 KLMEA128G
¥2,249
2
【Amazon.co.jp限定】Meta Quest 3S(128GB)購入で『Gorilla Tag』ゲームを無料プレゼント|VRヘッドセット|メモリが33%増加 | 2倍のグラフィック処理性能 |ワイヤレスのVR体験
【Amazon.co.jp限定】Meta Quest 3S(128GB)購入で『Gorilla Tag』ゲームを無料プレゼント|VRヘッドセット|メモリが33%増加 | 2倍のグラフィック処理性能 |ワイヤレスのVR体験
¥50,490
3
Anker PowerLine III Flow USB-C & USB-C ケーブル Anker絡まないケーブル 240W 結束バンド付き USB PD対応 シリコン素材採用 iPhone 17 / 16 / 15 / Galaxy iPad Pro MacBook Pro/Air 各種対応 (1.8m ミッドナイトブラック)
Anker PowerLine III Flow USB-C & USB-C ケーブル Anker絡まないケーブル 240W 結束バンド付き USB PD対応 シリコン素材採用 iPhone 17 / 16 / 15 / Galaxy iPad Pro MacBook Pro/Air 各種対応 (1.8m ミッドナイトブラック)
¥1,290
4
ソニー ゲーミングイヤホン INZONE Buds:WF-G700N Fnatic監修/ワイヤレス / 低遅延2.4GHzワイヤレス接続 USBType-Cトランシーバー同梱/LE Audio対応/アクティブノイズキャンセリング/立体音響 / 最大約24時間バッテリー / 急速充電/マイク付き / PS5 スマホ PC Switch グラスパープル
ソニー ゲーミングイヤホン INZONE Buds:WF-G700N Fnatic監修/ワイヤレス / 低遅延2.4GHzワイヤレス接続 USBType-Cトランシーバー同梱/LE Audio対応/アクティブノイズキャンセリング/立体音響 / 最大約24時間バッテリー / 急速充電/マイク付き / PS5 スマホ PC Switch グラスパープル
¥20,800
5
Anker USB Type C ケーブル PowerLine USB-C & USB-A 3.0 ケーブル iPhone 17 / 16 / 15 /Xperia/Galaxy/LG/iPad Pro/MacBook その他 Android 等 USB-C機器対応 テレワーク リモート 在宅勤務 0.9m ホワイト
Anker USB Type C ケーブル PowerLine USB-C & USB-A 3.0 ケーブル iPhone 17 / 16 / 15 /Xperia/Galaxy/LG/iPad Pro/MacBook その他 Android 等 USB-C機器対応 テレワーク リモート 在宅勤務 0.9m ホワイト
¥640
6
Anker iPhone充電ケーブル PowerLine II ライトニングケーブル MFi認証 超高耐久 iPhone 14 / 14 Pro Max / 14 Plus / 13 / 13 Pro / 12 / 11 / X/XS/XR / 8 Plus 各種対応 (0.9m ホワイト)
Anker iPhone充電ケーブル PowerLine II ライトニングケーブル MFi認証 超高耐久 iPhone 14 / 14 Pro Max / 14 Plus / 13 / 13 Pro / 12 / 11 / X/XS/XR / 8 Plus 各種対応 (0.9m ホワイト)
¥990
7
Kindle Paperwhite シグニチャーエディション (32GB) 7インチディスプレイ、明るさ自動調整、色調調節ライト、12週間持続バッテリー、広告なし、メタリックブラック
Kindle Paperwhite シグニチャーエディション (32GB) 7インチディスプレイ、明るさ自動調整、色調調節ライト、12週間持続バッテリー、広告なし、メタリックブラック
¥23,980
8
Amazon Kindle Paperwhite (16GB) 7インチディスプレイ、色調調節ライト、12週間持続バッテリー、広告なし、ブラック
Amazon Kindle Paperwhite (16GB) 7インチディスプレイ、色調調節ライト、12週間持続バッテリー、広告なし、ブラック
¥18,980
9
CIO フラットスパイラルケーブル CtoC 1m (Type-C/USB-C) PD 急速充電 平型 磁石 マグネット吸着 まとまる 充電ケーブル PD 240W データ転送 480Mbps (ブラック, 1m)
CIO フラットスパイラルケーブル CtoC 1m (Type-C/USB-C) PD 急速充電 平型 磁石 マグネット吸着 まとまる 充電ケーブル PD 240W データ転送 480Mbps (ブラック, 1m)
¥1,680
10
エレコム 電源タップ 6個口 3m 雷ガード 個別スイッチ ほこりシャッター付 耐熱 PSE技術基準適合 ブラック T-K6A-2630BK
エレコム 電源タップ 6個口 3m 雷ガード 個別スイッチ ほこりシャッター付 耐熱 PSE技術基準適合 ブラック T-K6A-2630BK
¥1,590

Amazonのアソシエイトとして、ASCII.jpは適格販売により収入を得ています。

デジタル用語辞典

ASCII.jpメール デジタルMac/iPodマガジン