このページの本文へ

前へ 1 2 3 4 次へ

Windows Info第165回

Windows 10でUWPアプリを起動する方法

2019年03月24日 10時00分更新

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

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

UWPアプリを起動する方法には5種類がある

 UWPアプリケーションを起動するには、大きく5つの方法がある。1つ目は誰でも知っているスタートメニューから起動する方法である。スタートメニューを開いてアプリリストやタイルをクリックするだけだ。

 2つ目は、タスクバーからの起動である。タスクバーには、UWPアプリを登録することが可能で、登録後にタスクバー上のアイコンのクリックで起動ができる。

 3つめの方法は、ちょっとトリッキーだが、Microsoftストアアプリからの起動だ。UWPは原則すべてMicrosoftストアからインストールされる。このため標準添付のアプリであっても、Microsoftストアからインストールが可能なものは、すべてMicrosoftストアアプリから起動することができる。なおUWPアプリの起動は、Win32アプリと違って専用のAPIを使う必要があり、UWPアプリ内からはアプリケーションの名称を知っていれば比較的簡単にできる。

 4つめの方法はURLを使う方法だ。例外もあるが、UWPアプリはURIのスキームとしてアプリケーションが登録されているため、特定のURLを開くようにすると、UWPアプリを起動することができる。

 5つめの方法は、UWPアプリのショートカットを作る方法だ。Windowsのショートカット(.lnkファイル)は、通常のファイルなので、ファイルシステムのどこにでも置くことができ、これを使えば、コマンドラインからも直接UWPアプリを起動できる。今回はURLを使う方法とショートカットから起動する方法を説明したい。その前に確認の意味で、ちょっとUWPアプリについて解説しておく。

UWPアプリとAppxパッケージ

 UWPアプリは、Windows 10とともにインストールされるか、Microsoftストア経由でインストールする。かつては、Windows 10の標準UWPアプリはアンインストールできなかったが、Windows 10 Ver.1809(RS5)から一部のUWPアプリは、スタートメニューでアンインストール可能になった。次の19H1(Windows 10 Ver.1903)ではさらに範囲が拡大する予定だ。もっとも現時点でも大半のUWPアプリは、PowerShellのRemove-AppxPackageコマンドレットを使うことで、削除できる。

 Appxとは、UWPアプリケーションのパッケージ形式を指し、Microsoftストアは、このAppx形式のパッケージを使ってUWPアプリケーションをインストールする。Appxは以下の2ヵ所にインストールされている。

C:\Program Files\WindowsApps\
C*\Windows\SystemApps\

 このうち、後者のフォルダーにおかれているアプリは、「NonRemovable」とされていて、PowerShellからもアンインストールができない。

 このようなアプリには、Microsoft Edgeやコルタナ、Windowsセキュリティ(Defender)などがある。こうしたパッケージに関しては、PowerShellの「Get-AppxPackage」などを使うことで一覧を得ることが可能だ。なお、Get-AppxPackageでパッケージを特定できれば、Get-AppxPackageManifestを使って、後述するURL指定のスキーム(scheme)を調べることが可能になる。

 たとえば電卓は、「Microsoft.WindowsCalculator_10.1812.10048.0_x64__8wekyb3d8bbwe」というパッケージ名を持つ。Get-AppxPackageコマンドでは、ワイルドカードを使って名前を指定できるため、その一部である「calc」とワイルドカードである「*」を組みあわせて

Get-AppxPackage "*calc*"

としてパッケージのオブジェクトを得ることができる。

Get-AppxPackageコマンドレットでは、名前の指定にワイルドカードを使えるため、アプリの一部を指定するだけでパッケージ情報を表示できる。また、Get-AppxPackageManifestコマンドレットを使えば、UWPアプリのマニフェスト情報を得ることも可能だ

 さらに、これにGet-AppxPackageManifestを使い、得られたxmlオブジェクトをアクセスすれば、アプリのスキームを得ることができる。そのためには、たとえば、以下のようにする。

(Get-AppxPackage "*calc*" | Get-AppxPackageManifest).package.applications.application.extensions.extension.Protocol.name

 この文は、カッコの中がアプリケーションの基本情報となるマニフェストを得る部分であり、結果はxmlオブジェクトなるので、カッコの外は、xmlの内部へのアクセスである。アプリケーション名は簡単には調べにくいのだが、後述するアプリのショートカットを作れば、そのプロパティから探すことが可能になる。

前へ 1 2 3 4 次へ

この連載の記事

注目ニュース

ASCII倶楽部

最新記事

プレミアムPC試用レポート

ピックアップ

ASCII.jp RSS2.0 配信中

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