Help and Support

文書番号: 927387 - 最終更新日: 2007年3月19日 - リビジョン: 2.3

Windows Vista のファイルおよびレジストリの仮想化に関する一般的な問題

重要 : この資料には、レジストリの編集方法が記載されています。万一に備えて、編集の前には必ずレジストリをバックアップし、レジストリの復元方法を理解しておいてください。バックアップ、復元、および編集方法の詳細を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
256986? (http://support.microsoft.com/kb/256986/ ) Microsoft Windows レジストリの説明

目次

すべて展開する | すべて折りたたむ

現象

Windows Vista の仮想化機能を使用すると、次のシナリオに記載されているファイルおよびレジストリの仮想化の問題が発生する場合があります。

シナリオ 1 : アプリケーションのインストール、アップグレード、または使用時にエラー メッセージが表示される

アプリケーションのインストール、アップグレード、または使用時にアクセスが拒否されたことを示すさまざまなエラー メッセージが表示される場合があります。たとえば、次のいずれかの現象が発生することがあります。
  • %programfiles% フォルダ以外のフォルダにアプリケーションをインストールすると、"アクセスが拒否されました" というエラー メッセージが表示されます。また、アプリケーションが正常に機能しません。
  • 次のようなアプリケーション エラー メッセージが表示されます。
    C:\MyApp\Temp フォルダを作成できません。
    C:\MyApp\Temp\output.dat ファイルを作成できません。
  • 次のようなエラー メッセージが表示されます。
    MyFile.exe への書き込みエラー
    この現象は、次のいずれかの操作を行った場合に発生することがあります。
    • 仮想化された場所にリンクを作成します。
    • 暗号化ファイル システム (EFS) を使用してファイルを暗号化します。
    • 圧縮されたファイルを参照します。
    • コマンド プロンプトを使用して、仮想化が可能な場所に .exe、.sys、または .dll ファイルをコピーします。
  • ファイルの入力または出力が必要なアプリケーションの一部が正常に機能しなくなります。

シナリオ 2 : 作成したばかりのファイルまたはフォルダが見つからない

仮想化が可能なアプリケーションを使用すると、ファイル システムの仮想化が可能な場所にデータ ファイルが作成されます。他のアプリケーションまたはエクスプローラを使用してこれらの新しく作成されたファイルにアクセスしようとしても、ファイルが見つかりません。たとえば、写真編集アプリケーションで %programfiles%、%systemroot%、または %programdata% フォルダにファイルを保存しても、ファイルは見つかりません。

シナリオ 3 : アプリケーションをアップグレードすると、プログラムが正常に実行されない

アプリケーションをアップグレードすると、次のようなエラー メッセージが表示されます。
Error. Please upgrade your application
また、アプリケーションが正常に実行されません。アプリケーションで誤ったデータまたはアップグレード前のデータが使用されているように見えます。

シナリオ 4 : アプリケーションをアンインストールしても、アプリケーションのファイルが依然としてコンピュータ上に存在する

このシナリオでは、次のいずれかの現象が発生します。
  • 他のアプリケーションの使用時に、アンインストールしたアプリケーションのファイルおよびフォルダの情報が依然として %programfiles%、%programdata%、または %systemroot% フォルダに存在します。
  • %userprofile%\AppData\Local\VirtualStore フォルダの容量が予想より大きくなっています。アプリケーション実行時に作成された仮想化されたファイルがアンイントール時に削除されませんでした。

原因

これらの問題は、次のいずれかまたは複数の条件によって発生します。
  • アプリケーションにより、ファイルまたはフォルダが仮想化された特定のフォルダ以外の場所に作成される。
  • アプリケーションにより %programfiles% フォルダに保存されたファイルが、ユーザーの仮想ストア フォルダ以外のフォルダに移動される場合がある。
  • アプリケーションで、仮想化をサポートしていないファイルが使用される。

解決方法

シナリオ 1

シナリオ 1 に記載されている問題が発生しているかどうかを判断するには、イベント ビューアで FileCreateVirtualExclude イベントの有無を確認します。これを行うには、次の手順を実行します。
  1. [スタート] ボタン
    元に戻す画像を拡大する
    [スタート] ボタン
    をクリックし、[検索の開始] ボックスに eventvwr と入力して、[プログラム] ボックスの一覧の [eventvwr] をクリックします。

    元に戻す画像を拡大する
    ユーザー アカウント制御の許可
    管理者のパスワードを要求するダイアログ ボックスが表示された場合はパスワードを入力して [OK] をクリックし、確認を要求するダイアログ ボックスが表示された場合は [続行] をクリックします。
  2. [アプリケーションとサービス ログ]、[Microsoft]、[Windows]、[Uac-FileVirtualization] を順に展開し、[Operational] をクリックします。イベント ID が 5000 の場合、FileCreateVirtualExclude イベントが発生しています。
この問題を解決するには、以下のいずれかの方法を使用します。
  • プログラムが %programfiles% フォルダにインストールされていない場合は、%programfiles% フォルダに再インストールします。
  • 管理者の資格情報を持つアカウントを使用して、このアプリケーションを実行します。これを行うには、アプリケーションのショートカットを見つけ、右クリックして [管理者として実行] をクリックします。

    元に戻す画像を拡大する
    ユーザー アカウント制御の許可
    管理者のパスワードを要求するダイアログ ボックスが表示された場合はパスワードを入力して [OK] をクリックし、確認を要求するダイアログ ボックスが表示された場合は [続行] をクリックします。
  • 管理者の資格情報を持つコマンド プロンプトから、アプリケーションを実行します。これを行うには、次の手順を実行します。
    1. [スタート] ボタン
      元に戻す画像を拡大する
      [スタート] ボタン
      をクリックし、[検索の開始] ボックスに cmd と入力し、[プログラム] ボックスの一覧の [cmd] をクリックします。
    2. [プログラム] ボックスの一覧で [cmd] を右クリックして、[管理者として実行] をクリックします。

      元に戻す画像を拡大する
      ユーザー アカウント制御の許可
      管理者のパスワードを要求するダイアログ ボックスが表示された場合はパスワードを入力して [OK] をクリックし、確認を要求するダイアログ ボックスが表示された場合は [続行] をクリックします。
    3. MyAppsPath/MyApp と入力し、Enter キーを押します。MyAppsPath/MyApp にはアプリケーションのパスと名前を指定します。
  • アプリケーションのフォルダでセキュリティの設定を変更します。これを行うには、次の手順を実行します。
    1. 管理者の資格情報を持つユーザーとしてログオンし、エクスプローラを使用してアプリケーションのフォルダを開きます。
    2. アプリケーションのフォルダを右クリックし、[プロパティ] をクリックします。
    3. [セキュリティ] タブの [編集] をクリックします。

      元に戻す画像を拡大する
      ユーザー アカウント制御の許可
      管理者のパスワードを要求するダイアログ ボックスが表示された場合はパスワードを入力して [OK] をクリックし、確認を要求するダイアログ ボックスが表示された場合は [続行] をクリックします。
    4. [グループ名またはユーザー名] ボックスの一覧で、このアプリケーションを実行するユーザー アカウントをクリックします。
    5. [Users のアクセス許可] ボックスの一覧で、以下のアクセス許可の [許可] 列のチェック ボックスをオンにします。
      • 変更
      • 読み取りと実行
      • フォルダの内容の一覧表示
      • 読み取り
      • 書き込み
    6. [OK] をクリックします。

シナリオ 2

この問題を解決するには、以下のいずれかの方法を使用します。
  • エクスプローラ バーに表示される [互換性ファイル] ボタンをクリックし、フォルダの仮想化されたファイルを表示します。[互換性ファイル] ボタンは、フォルダに仮想化されたファイルがある場合にのみ表示されます。
  • C:\Users\User_name\AppData\Local\VirtualStore フォルダを確認し、ファイルおよびフォルダを見つけます。
  • アプリケーションのデータをユーザー プロファイルのフォルダに保存します。

シナリオ 3

警告 : レジストリ エディタまたは別の方法を使用してレジストリを誤って変更すると、深刻な問題が発生することがあります。最悪の場合、オペレーティング システムの再インストールが必要になることがあります。マイクロソフトは、レジストリの変更により発生した問題に関しては、一切責任を負わないものとします。レジストリの変更は、自己の責任において行ってください。

この問題を解決するには、以下のいずれかの方法を使用します。
  • 管理者の資格情報を持つコマンド プロンプトから、アプリケーションを実行します。これを行うには、次の手順を実行します。
    1. [スタート] ボタン
      元に戻す画像を拡大する
      [スタート] ボタン
      をクリックし、[検索の開始] ボックスに cmd と入力し、[プログラム] ボックスの一覧の [cmd] をクリックします。

      元に戻す画像を拡大する
      ユーザー アカウント制御の許可
      管理者のパスワードを要求するダイアログ ボックスが表示された場合はパスワードを入力して [OK] をクリックし、確認を要求するダイアログ ボックスが表示された場合は [続行] をクリックします。
    2. MyAppsPath/MyApp と入力し、Enter キーを押します。MyAppsPath/MyApp には、アプリケーションのパスと名前を指定します。
  • 仮想ストアを開いて、アプリケーションの古いデータ ファイルを削除します。これを行うには、エクスプローラを使用して C:\Users\User_name\AppData\Local\VirtualStore\Program Files\MyApp フォルダを開き、ドキュメントまたはデータ ファイル以外のファイルをすべて削除します。
  • レジストリから仮想ストアを削除します。

    レジストリで仮想ストアを見つけ、不要なキーを削除するには、次の手順を実行します。
    1. [スタート] ボタン
      元に戻す画像を拡大する
      [スタート] ボタン
      をクリックし、[検索の開始] ボックスに regedit と入力して、[プログラム] ボックスの一覧の [regedit] をクリックします。

      元に戻す画像を拡大する
      ユーザー アカウント制御の許可
      管理者のパスワードを要求するダイアログ ボックスが表示された場合はパスワードを入力して [OK] をクリックし、確認を要求するダイアログ ボックスが表示された場合は [続行] をクリックします。
    2. 次のレジストリ サブキーを見つけてクリックします。
      HKEY_CURRENT_USER\Software\Classes\VirtualStore
    3. 不要になったアプリケーションのレジストリ キーがある場合は、キーを右クリックし、[削除] をクリックして、[はい] をクリックします。

シナリオ 4

この問題を解決するには、エクスプローラを使用して、C:\Users\User_name\AppData\Local\VirtualStore\MyApp フォルダを開き、アンインストールされたアプリケーションのデータを削除します。

詳細

ファイルおよびレジストリの仮想化によって、レジストリおよびファイル システムへのアクセスを制限されているユーザーが、これらの保護された領域に書き込むことができます。仮想化によって、"ユーザーごとの" コピーが作成され、一連のデータ操作がリダイレクトされます。 たとえば、制限付きのユーザー アカウントまたはユーザー アカウント制御の許可が必要なアカウントでアプリケーションが実行されていると仮定します。このアプリケーションにより %programfiles% フォルダなどのシステムの場所に書き込みが行われると、Windows Vista ではユーザー プロファイルのフォルダ (%localappdata%\VirtualStore) にあるユーザー固有の場所に書き込み操作と読み取り操作がリダイレクトされます。デフォルトでは、この場所は C:\Users\User_name\AppData\Local\VirtualStore\Program Files\Application_name です。レジストリの仮想化も同様の動作ですが、HKEY_LOCAL_MACHINE\SOFTWARE サブツリーの下にあるレジストリ キーが対象となります。このサブツリーの下のキーとデータは、HKEY_CURRENT_USER\Software\Classes\VirtualStore サブキーにリダイレクトされます。

詳細については、次のマイクロソフト Web サイトを参照してください。
http://msdn2.microsoft.com/en-us/library/aa480150.aspx (http://msdn2.microsoft.com/en-us/library/aa480150.aspx)

この資料は以下の製品について記述したものです。
  • Windows Vista Business
  • Windows Vista Enterprise
  • Windows Vista Home Premium
  • Windows Vista Home Basic
  • Windows Vista Ultimate
  • Windows Vista Business 64-bit edition
  • Windows Vista Enterprise 64-bit edition
  • Windows Vista Home Premium 64-bit edition
  • Windows Vista Home Basic 64-bit edition
  • Windows Vista Ultimate 64-bit edition
キーワード:?
kbfilesystems kbregistry kbexpertiseinter kbtshoot kbprb KB927387
"Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。"

サポート技術情報の翻訳