Windows のスタート メニューにインターネット ブラウザーまたは Email クライアントを登録する方法

Note

このトピックは、Windows XP、Windows Vista、および Windows 7 に適用されます。

 

Windows XP および Windows Vista の [スタート] メニューには、既定の インターネット (ブラウザー) クライアントと 電子メール (メール) クライアント用の予約スロットが含まれており、一般に [スタート] メニュー インターネット アプリケーションと呼ばれます。 [スタート] メニューの [インターネット アプリケーション] として登録されたアプリケーションは、システム全体 (コンピューターごと) 全体でこれを行います。 Windows Vista では、ユーザーは 既定のプログラム 機能を使用して、ユーザーごとの既定値を設定できます。

アプリケーションが [スタート] メニューの [インターネット アプリケーション] として登録されると、Windows XP と Windows Vista によって [スタート] メニューに [インターネット ] アイコンと [電子メール ] アイコンが作成されます。 これらのアイコンをクリックすると、[スタート] メニューにユーザーごとのレジストリ サブツリー (HKEY_CURRENT_USER) がチェックされます。 ユーザーごとの既定の設定が見つからない場合、[スタート] メニューでは、 HKEY_LOCAL_MACHINE サブツリーでマシンごとの既定のサブキーが検索されます。

Note

Windows の既定のインストールでは、ユーザーごとの既定のインターネットまたは電子メール プログラムは登録されず、システム全体の既定値のみが登録されます。 これにより、以前のバージョンのオペレーティング システムからのスムーズなアップグレード パスが提供されます。このパスでは、HKEY_LOCAL_MACHINE サブツリーのみがクライアント登録でサポートされます。

 

このトピックでは、次の項目について説明します。

Note

この登録は、Windows 7 の時点で非推奨となり、[スタート] メニューの [インターネット] リンクは提供されなくなりました。 Windows 7 以降では、既存の登録は無視されます。 既定の [スタート] メニューの [インターネット アプリケーション] として登録されているのは、既定の Web ブラウザーとして登録されているのと同じではありません。 既定の Web ブラウザーは、システム内のどこからでも任意の URL を起動するために使用されます。 スタート メニューのインターネット アプリケーションは、ユーザーが [スタート] メニューの [インターネット] アイコンをクリックしたときに起動されるプログラムを制御するだけです。

 

任意の Web ブラウザー アプリケーションを登録して、[スタート] メニューにインターネット クライアントとして表示できます。 この可視性は、アプリケーションの ファイルプロトコル の種類に対する適切な登録と組み合わせて、アプリケーションの既定のブラウザーの状態を提供します。

HKEY_CURRENT_USER サブツリーで行われた登録は、HKEY_LOCAL_MACHINEで行われた対応する登録よりもコンソール ユーザーの優先順位が高くなります。 システム上の新規ユーザーの場合は、 HKEY_LOCAL_MACHINE に格納されている設定が使用されます。 Windows XP の時点で、[スタート] メニューの [インターネット設定] は、次の 2 つのレジストリの場所の既定のエントリに保持されます。

  • Hkey_current_user\ソフトウェア\クライアント\StartMenuInternet
  • Hkey_local_machine\ソフトウェア\クライアント\StartMenuInternet

SOFTWARE\Clients\StartMenuInternetHKEY_CURRENT_USER\サブキーには、ユーザーが [スタート] メニューの [インターネット] アイコンをクリックしたときに開始されるインターネット ブラウザーが記述されています。 そのサブキーが空白または見つからない場合、[スタート] メニューの [インターネット ] アイコンは、システムにインストールされているすべてのインターネット ブラウザー アプリケーションを説明する 、HKEY_LOCAL_MACHINE\SOFTWARE\Clients\StartMenuInternet の 2 番目の場所に格納されているシステムの既定値に設定されます。

新しいユーザーがシステムにログオンすると、[スタート] メニューは、HKEY_LOCAL_MACHINESOFTWARE\Clients\StartMenuInternet のサブキー\の既定値を使用して既定のインターネット クライアントを表示し、そのアイコンがクリックされたときに登録済みアプリケーションを起動します。

既定のインターネット クライアントとして登録する方法

SOFTWARE\Clients\StartMenuInternetHKEY_LOCAL_MACHINE\サブキーの下には、登録されているインターネット ブラウザー アプリケーションごとに 1 つずつ、0 個以上のサブキーを指定できます。 たとえば、仮定のシステムでは、次の構成を使用できます。

HKEY_LOCAL_MACHINE
   SOFTWARE
      Clients
         StartMenuInternet
            IEXPLORE.EXE
            BROWSER2.EXE
            BROWSER3.EXE

Litware Inc. という架空の会社の "Lit View" という架空のブラウザーでレジストリ エントリを示します。Lit View の実行可能ファイル名がLitview.exeされているとします。 Lit View の登録は、次のように行われます。

HKEY_LOCAL_MACHINE
   SOFTWARE
      Clients
         StartMenuInternet
            LITVIEW.EXE
               LocalizedString = @C:\Program Files\LitwareInc\ResourceDLL.dll,-123

LocalizedString データの型は REG_SZ です。または、 などの %programfiles% パス変数が使用されている場合はREG_EXPAND_SZ。 LocalizedString は、実行可能ファイル (.exe) またはライブラリ (.dll) ファイルへのパスを提供します。 パス文字列は "at" 記号 (@) で始まり、パス内のスペースに関係なく、パスの周囲に引用符は必要ありません。 10 進数の整数は、指定された DLL 内に含まれる文字列リソースの ID であり、その値はユーザーに表示されます。 これにより、複数の言語で同じ登録を使用できます。 言語ごとに異なるResourceDLL.dllが提供されます。 これにより、システムは現在選択されている言語に基づいて正しい文字列を表示できます。

次のREG_SZまたはREG_EXPAND_SZ値は、ユーザーが [スタート] メニューの [インターネット ブラウザー] として [Lit View] を選択したときに表示される既定のアイコンの [スタート] メニューに通知します。

HKEY_LOCAL_MACHINE
   SOFTWARE
      Clients
         StartMenuInternet
            LITVIEW.EXE
               DefaultIcon
                  (Default) = C:\Program Files\LitwareInc\LitView.exe,1

次のレジストリ サブキーは、ユーザーが [スタート] メニューの [インターネット] メニュー コマンドをクリックしたときに実行するコマンド ラインを指定します。Lit View が選択された [スタート] メニューの [インターネット ブラウザー] であると仮定します。 たとえば、コマンドはユーザーのホーム ページを使用してブラウザーを開いたり、独立系ソフトウェア ベンダー (ISV) が適切であると感じる入門ユーザー インターフェイスを起動したりできます。 データの種類は REG_SZ または REG_EXPAND_SZ ですが、コマンド ライン パスにスペースがあるため、実行可能パスは引用符で囲まれています。

HKEY_LOCAL_MACHINE
   SOFTWARE
      Clients
         StartMenuInternet
            LITVIEW.EXE
               shell
                  open
                     (Default) = "C:\Program Files\LitwareInc\LitView.exe" -welcome

ユーザーがコンピューター レベルの既定の Web ブラウザーとして Lit View を使用するように プログラム アクセスの設定とコンピューターの既定値 (SPAD) を使用して指定した場合、アプリケーションは次のREG_SZエントリを設定する必要があります。 SPAD は管理者特権で実行されるため、このサブキーへのアクセスが許可されることに注意してください。

HKEY_LOCAL_MACHINE
   SOFTWARE
      Clients
         StartMenuInternet
            (Default) = LITVIEW.EXE

Note

Windows Vista では、SPAD ではなく既定のプログラム ツールを使用して、ユーザー レベルの既定の Web ブラウザーを設定する必要があります。

次の情報は、Windows XP にのみ適用されます。

上記のようにHKEY_LOCAL_MACHINEのコンピューター レベルの既定の Web ブラウザーの登録が成功した場合、アプリケーションは次のサブキーの下にある既定のエントリを削除する必要があります。

HKEY_CURRENT_USER
   SOFTWARE
      Clients
         StartMenuInternet

HKEY_LOCAL_MACHINE下のコンピューター レベルの既定の Web ブラウザーの登録が失敗した場合、アプリケーションは Lit View アプリケーションの次の例に示すように、REG_SZ データを設定する必要があります。

HKEY_CURRENT_USER
   SOFTWARE
      Clients
         (Default) = LITVIEW.EXE

 

適切なサブキーを更新した後、アプリケーションは、wParam パラメーターを 0 に設定し、その lParam パラメーターが null で終わる文字列 を指して、WM_SETTINGCHANGE メッセージをブロードキャストします"Software\Clients\StartMenuInternet"。 これにより、既定のクライアントが変更されたことをオペレーティング システムに通知します。

ユーザーごとの登録をサポートしていない古い Web ブラウザーとの下位互換性を維持するには、既定の [スタート] メニューの [インターネット ブラウザー] にこれらのサブキーを設定する必要があります。

Note

[スタート] メニュー Emailリンクは、Windows 7 以降で削除されました。 ただし、このセクションで説明するこの登録は、既定の MAPI クライアントを割り当てる際に有効な場合でも実行する必要があります。

 

[スタート] メニューに既定のEmail クライアントが表示される方法

[スタート] メニューに電子メール クライアントとして表示されるように、任意の電子メール アプリケーションを登録できます。 この可視性は、アプリケーションの ファイルプロトコル の種類に対する適切な登録と組み合わせて、アプリケーションの既定のメール状態を提供します。

HKEY_CURRENT_USER サブツリーで行われた登録は、HKEY_LOCAL_MACHINEで行われた対応する登録よりもコンソール ユーザーの優先順位が高くなります。 システム上の新規ユーザーの場合は、 HKEY_LOCAL_MACHINE に格納されている設定が使用されます。 Windows XP の時点で、[スタート] メニュー Email設定は、次の 2 つのレジストリの場所の既定のエントリに保持されます。

  • Hkey_current_user\ソフトウェア\クライアント\メール
  • Hkey_local_machine\ソフトウェア\クライアント\メール

ソフトウェア\クライアント\メールHKEY_CURRENT_USER\サブキーは、ユーザーが [スタート] メニューの [電子メール] アイコンをクリックしたときに開始される電子メール クライアントを表します。

ソフトウェア\クライアント\メールHKEY_LOCAL_MACHINE\サブキーは、システムにインストールされている電子メール アプリケーションと既定の電子メール アプリケーションについて説明します。

HKEY_CURRENT_USER\SOFTWARE\Clients\Mail が空白の場合、または見つからない場合は、HKEY_LOCAL_MACHINE\SOFTWARE\Clients\Mail で定義されている既定値を使用して、[スタート] メニューに表示される電子メール アプリケーションを選択します。

新しいユーザーがシステムにログオンすると、[スタート] メニューでは、 HKEY_LOCAL_MACHINE\SOFTWARE\Clients\Mail のサブキーの既定値を使用して既定の電子メール クライアントが表示され、そのアイコンがクリックされたときに登録済みアプリケーションが起動します。

既定の EMail クライアントとして登録する方法

Hkey_local_machine\ソフトウェア\クライアント\メール には、登録されている電子メール アプリケーションごとに 1 つずつ、0 個以上のサブキーを含めることができます。 たとえば、仮定のシステムでは、次のサブキーを定義できます。

HKEY_LOCAL_MACHINE
   SOFTWARE
      Clients
         Mail
            Eudora
            Windows Mail

Litware Inc. Litware Inc. という架空の会社の "Lit Mail" という架空の電子メール クライアントを使用してレジストリ エントリを示します。Litware Inc. は、内部名 "LitMail" でこの電子メール クライアントを登録することにしました。 ブラウザーと同様に、内部名はサブキー名として使用される一意の文字列ですが、ユーザーには表示されません。

Lit Mail メール クライアントを既定としてインストールするには、次のサブキーとそのエントリを使用します。

HKEY_LOCAL_MACHINE
   SOFTWARE
      Clients
         Mail
            LitMail
               (Default) = Lit Mail
               LocalizedString = @C:\Program Files\LitwareInc\ResourceDLL.dll,-456

LocalizedString データの型は REG_SZ です。または、 などの %programfiles% パス変数が使用されている場合はREG_EXPAND_SZ。 LocalizedString は、実行可能ファイル (.exe) またはライブラリ (.dll) ファイルへのパスを提供します。 パス文字列は "at" 記号 (@) で始まり、パス内のスペースに関係なく、パスの周囲に引用符は必要ありません。 10 進数の整数は、指定された DLL 内に含まれる文字列リソースの ID であり、その値はユーザーに表示されます。 これにより、複数の言語で同じ登録を使用できます。 言語ごとに異なるResourceDLL.dllが提供されます。 これにより、システムは現在選択されている言語に基づいて正しい文字列を表示できます。

適切なサブキーを更新した後、アプリケーションは、wParam パラメーターを 0 に設定し、その lParam パラメーターが null で終わる文字列 を指して、WM_SETTINGCHANGE メッセージをブロードキャストします"Software\Clients\Mail"。 これにより、既定のクライアントが変更されたことをオペレーティング システムに通知します。

ローカライズされた文字列をサポートしていないアプリケーションとの下位互換性を維持するために、インストールされている言語のアプリケーションの名前もサブキーの既定値として設定する必要があります。

次の REG_SZ または REG_EXPAND_SZ 値は、ユーザーが [スタート] メニューのメール プログラムとして [Lit Mail] を選択したときに表示される既定のアイコンの [スタート] メニューに通知します。

HKEY_LOCAL_MACHINE
   SOFTWARE
      Clients
         Mail
            LitMail
               DefaultIcon
                  (Default) = C:\Program Files\LitwareInc\LitMail.exe,1

次のエントリでは、ユーザーが [スタート] メニューの [電子メール ] メニュー項目をクリックしたときに実行するコマンド ラインを指定します。Lit Mail が選択された [スタート] メニューのメール プログラムであると仮定します。 このコマンド ラインは、ユーザーが [Windows インターネット エクスプローラー ツール] メニューから [メールの読み取り] を選択した場合にも実行されます。 データの種類は REG_SZ または REG_EXPAND_SZですが、コマンド ライン パスにスペースがあるため、実行可能パスは引用符で囲まれています。

HKEY_LOCAL_MACHINE
   SOFTWARE
      Clients
         Mail
            shell
               open
                  command
                     (Default) = "C:\Program Files\LitwareInc\LitMail.exe" -inbox

ユーザーが Lit Mail を既定 [スタート] メニューのメール アプリケーションに指定した場合にのみ、Lit Mail アプリケーションは内部名を次の REG_SZ 値に書き込む場合があります。

HKEY_CURRENT_USER
   SOFTWARE
      Clients
         Mail
            (Default) = LitMail

ユーザーが Lit Mail システム全体の既定の電子メール アプリケーションとして指定した場合 (および、その場合のみ)、Lit Mail アプリケーションは、その内部名を以下に指定した REG_SZ 値に書き込む場合があります。 このサブキーへのアクセスが制限される可能性があることに注意してください。 アプリケーションでは、すべてのユーザーがシステム全体の既定の電子メール アプリケーションを変更するアクセス許可を持っているとは想定しないでください。

HKEY_LOCAL_MACHINE
   SOFTWARE
      Clients
         Mail
            (Default) = LitMail

既定のスタート メニュー電子メール アプリケーションとしての登録は、システムの既定の電子メール クライアントまたは登録済みの mailto ハンドラーとしての登録と同じではありません。

  • ユーザーが [インターネット エクスプローラー ツール] メニューから [電子メールの読み取り] をクリックすると、システムの既定の電子メール クライアントが起動します。
  • 登録された mailto ハンドラーは、ユーザーが フォーム mailto:someone@example.comの URL をクリックすると開始されます。
  • ユーザーが [スタート] メニューの [電子メール] アイコンをクリックすると、[スタート] メニュー の電子メール アプリケーションが起動します。

既定の [スタート] メニューの電子メール アプリケーションが指定されていない場合は、[スタート] メニューのEmail アイコンがシステムの既定の電子メール クライアントを起動します。

このトピックでは、アプリケーションを既定の mailto プロトコル ハンドラーとして登録する方法については説明しません。 このような方法で登録するアプリケーションは、この問題に関する既存の仕様に従い続ける必要があります。

コンテキスト メニューのカスタマイズ

アプリケーションは、ユーザーが電子メール (またはインターネット) アイコンのショートカット メニューから [プロパティ] を選択したときに表示されるプロパティ ページをカスタマイズできます。 たとえば、Litware 電子メール アプリケーションは、既定のプロパティ シートではなく、電子メール アイコンのカスタム プロパティ シートを表示するために、次のREG_SZまたはREG_EXPAND_SZデータを追加します。

HKEY_LOCAL_MACHINE
   SOFTWARE
      Clients
         Mail
            LitMail
               shell
                  properties
                     MUIVerb = @C:\Program Files\LitwareInc\ResourceDLL.dll,-789
                     command
                        (Default) = "C:\Program Files\LitwareInc\LitMail.exe" -properties

MUIVerb データ項目は、"at" 記号 (@) で始まり、その後にリソース DLL への完全なパス、コンマ、マイナス記号 (-)、表示する 10 進文字列リソース識別子で構成されます。 LitMail.exe プログラムへのパスにはスペースが含まれているため、パス文字列は引用符内に配置されます。

アプリケーションでは、コンテキスト メニューにコマンドを追加することもできます。 たとえば、Litware 電子メール アプリケーションは、次のREG_SZ データを含む find コマンドを追加します。

HKEY_LOCAL_MACHINE
   SOFTWARE
      Clients
         Mail
            LitMail
               shell
                  find
                     MUIVerb = @C:\Program File\LitwareInc\ResourceDLL.dll,-790
                     command
                        (Default) = "C:\Program Files\LitwareInc\LitMail.exe" -contacts

シェルの下のサブキー名 (この場合は "find") は、任意の非ローカライズ名です。 もう一度 MUIVerb データには、最初の要素として "at" 記号 (@) が含まれており、その後にリソース DLL へのパス、コンマ区切り記号、10 進文字列リソース識別子の前にマイナス記号が続きます。 たとえば、その文字列リソースは "アドレス帳を開く" 場合があります。 最後に、コマンド ライン文字列にはスペースが含まれているため、引用符で囲まれていることに注意してください。