このページの本文へ

Windows Info 第68回

WindowsでURLのプロトコルからアプリを起動する

2016年08月14日 12時00分更新

文● 塩田紳二 編集● ASCII.jp

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

WindowsにはURLのプロトコルを処理する機能がある

 Windowsには、URLのプロトコルを処理する機能がある。具体的には、プロトコルに応じて対応するプログラムを起動するもの。たとえば、HTTPで始まるURLでは、HTTPプロトコルに対して、IEやEdgeなどが割り当てられている。

HTMLで、リンク先に「msnweather:」を指定し、Webブラウザでこのリンクをクリックすると、UWPアプリが起動する

 URLは、一般に以下のような形式を持つ。

スキーム:スキームで定義された場所の表現

 このうち、「スキーム」に相当する部分をマイクロソフトは「プロトコル」と呼び、プロトコルを扱うプログラムを「プロトコルハンドラ」などと呼んでいる。たとえば、いわゆるインターネットのURLである「HTTP://www.ascii.jp/index.html」の「HTTP」がスキーム(マイクロソフトのいうプロトコル)であり、「//www.ascii.jp/index.html」がHTTPというスキームで使われる「場所の表現」となる。

 なお、似たような用語にURI(Uniform Resource Identifier)があり、マイクロソフトの文書などでも表記されていることがあるが、実質URLと同じものと考えてかまわない。実際には、URIはURLの上位概念になるが、そもそもURLが先にあり、これを拡張してリソースの識別方法全般という意味でURIが定義され、ここでURIの一部としてURLという表記方法の定義が行なわれている。

 なお、URIはRFC3986で定義されている。URIには、URN(Uniform Resource Name)などの表記方法も含まれていて、厳密にはURLとは違うものだが、Windowsには、URNを処理する機能がなく、実質URLの処理のみが行なわれている。このため、Windowsのプロトコル起動に関してURIという表記があった場合、URLのことだと思ってかまわない。

●URIの定義
https://www.ietf.org/rfc/rfc3986.txt

 Windows 95までのWindowsにはプロトコルを扱う機能を持たなかったが、IE4がWindowsと統合されたときに、HTTPを含め、さまざまなプロトコルを汎用的に扱う必要があったために、拡張子の関連付けと同じメカニズムを使って、プロトコルとそれを処理するプログラムを関連付けできるようにした。

 当時はデスクトップ自体がブラウザとなり、HTMLで記述したコンポーネントをデスクトップ上に配置できるActive Desktopなどの機能があった(Windows XPまでは利用できた)。

 プログラムの関連付けと同じメカニズムを使うため、プロトコルの「関連付け」もユーザーが変更することが可能になる。代表的な例としては、HTTPを扱うWebブラウザだ。IEやEdge、ChromeやFireFoxといったブラウザを起動しているのは、このプロトコルによる関連付けである。

UWPアプリをプロトコルの関連付けで起動する

 このプロトコルの関連付けは、ストアアプリやUWPでは、大きな役割を持つ。というのは、ストアアプリやUWPアプリでは、自身を起動するプロトコル(URLのスキーマ)を定義することができるからだ。

 逆に言うと、ストアアプリやUWPアプリは、実行環境が違うため、コマンドラインやエクスプローラーから「実行ファイル」を指定して起動することができない(実行モジュールがCOM経由で呼び出されることでアプリが起動する)。しかし、プロトコルの関連付けを使うと、UWPやストアアプリを起動することができる。

 たとえば、以下のHTMLファイルをブラウザに読み込ませ、リンクをクリックすると「天気」アプリが起動する(記事冒頭の画像)。

<HTML>
<BODY>
<A href="msnweather:">Weather</A>
</BODY>
</HTML>

※:メモ帳などに上記HTMLを貼り付け、htmlファイルとして保存したのち、Webブラウザで開く

 Windows10でいえば、標準搭載されている多くのUWPアプリは、なんらかのプロトコルと関連付けられている。これを具体的に見るには、「コントロールパネル」→「既定のプログラム」→「ファイルの種類またはプロトコルのプログラムへの関連付け」(以下「プロトコルの関連付け設定」と表記する)を使う。

コントロールパネルの既定のプログラムにある「ファイルの種類またはプロトコルのプログラムへの関連付け」で、プロトコルとアプリの関係を見ることができる

 Windowsでは、スキーマとそれに続くコロン「:」を組にして「プロトコル」を認識する。このため、コマンドラインでstartコマンドを使って

start msnweather:

としても、「天気」アプリを起動することができる。

コマンドラインでも、startコマンドの引数としてプロトコルを指定すれば、UWPアプリを起動できる

 「プロトコルの関連付け設定」を見れば、少なくとも、プロトコルとアプリの関係を調べることができる。こちらは、プロトコルからアプリを特定するものだが、「コントロールパネル」→「既定のプログラム」→「既定のプログラムの設定」では、アプリからプロトコルを探すこともできる。左側のリストでアプリを指定して、「既定でこのプログラムで開く項目を選択する」をクリックすれば、関連付けられているプロトコルを見ることができる。

コントロールパネルの既定のプログラムにある「既定のプログラムの設定」を使うと、アプリからプロトコルを捜すことができる

 また、ショートカットの作成で、プロトコルをコロン付きで指定すれば、UWPアプリのショートカットを作ることができる。ストアアプリやUWPも、拡張子に対して関連付けができ、データファイルからストアアプリ、UWPアプリを起動することも可能だが、プロトコルの関連付けを行なえば、実行ファイル指定と同じようにストアアプリ、UWPアプリを起動できる。

ショートカット(.lnk)の作成で、プロトコルを指定すると、対応するUWPアプリへのデスクトップショートカットを作ることができる。アイコンもちゃんとUWPアプリのものが使われる

 また、一部のアプリは、複数のプロトコルを使い分けることやコロンの後にパラメーターをURI形式で指定することで、単純起動だけでなく、特定の機能を起動することも可能だ。その意味では、プロトコル起動は、ストアアプリやUWPでの「コマンドライン」に相当する機能といってもいいだろう。

 次回は、このプロトコル起動についてもう少し詳しく見ていくことにする。

カテゴリートップへ

この連載の記事

ASCII倶楽部

注目ニュース

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

プレミアム実機レビュー

ピックアップ
1
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,390
2
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 ホワイト
¥660
3
Amazon Kindle Paperwhite (16GB) 7インチディスプレイ、色調調節ライト、12週間持続バッテリー、広告なし、ブラック
Amazon Kindle Paperwhite (16GB) 7インチディスプレイ、色調調節ライト、12週間持続バッテリー、広告なし、ブラック
¥18,980
4
KIOXIA(キオクシア)【日本製】USBフラッシュメモリ 32GB USB2.0 国内サポート正規品 KLU202A032GL
KIOXIA(キオクシア)【日本製】USBフラッシュメモリ 32GB USB2.0 国内サポート正規品 KLU202A032GL
¥980
5
【Amazon.co.jp限定】 ロジクール 静音 ワイヤレス トラックボール マウス M575SPd Bluetooth Logibolt 無線 windows mac iPad OS Chrome トラックボールマウス ブラック M575 M575SP 国内正規品 ※Amazon.co.jp限定 壁紙ダウンロード付き
【Amazon.co.jp限定】 ロジクール 静音 ワイヤレス トラックボール マウス M575SPd Bluetooth Logibolt 無線 windows mac iPad OS Chrome トラックボールマウス ブラック M575 M575SP 国内正規品 ※Amazon.co.jp限定 壁紙ダウンロード付き
¥5,280
6
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,780
7
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
8
【Amazon.co.jp限定】バッファロー microSD 32GB 100MB/s UHS-1 U1 microSDHC【 Nintendo Switch 対応 】V10 A1 IPX7 Full HD RMSD-032U11HA/N
【Amazon.co.jp限定】バッファロー microSD 32GB 100MB/s UHS-1 U1 microSDHC【 Nintendo Switch 対応 】V10 A1 IPX7 Full HD RMSD-032U11HA/N
¥1,880
9
エレコム 電源タップ 6個口 3m 雷ガード 個別スイッチ ほこりシャッター付 耐熱 PSE技術基準適合 ブラック T-K6A-2630BK
エレコム 電源タップ 6個口 3m 雷ガード 個別スイッチ ほこりシャッター付 耐熱 PSE技術基準適合 ブラック T-K6A-2630BK
¥1,590
10
Kindle Paperwhite シグニチャーエディション (32GB) 7インチディスプレイ、明るさ自動調整、色調調節ライト、12週間持続バッテリー、広告なし、メタリックブラック
Kindle Paperwhite シグニチャーエディション (32GB) 7インチディスプレイ、明るさ自動調整、色調調節ライト、12週間持続バッテリー、広告なし、メタリックブラック
¥23,980

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

デジタル用語辞典

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