システムドライブのVHDクローンを使用してWindows 7をVHDから起動する
これはそれほど難しくない問題のように思われ、いくつかのハードルの後、私は途方もなく近づいています。でも、そこまでたどり着けません。 私はWindows 7を開発ショップで実行しています。VS2010を使用して、しばらくリリースされないものに取り組みたいと思います。上司は本番マシンでベータコードはないと言っていましたが、仮想PCのような分離された環境で実行できれば、このプロジェクトでVS2010を実行できました。 さて、私は以前VPCでWin7のベータ版とRC版を使用しましたが、VPC環境のために非常に遅くなりました。しかし、ディスクだけが仮想化されており、実際にハードウェアで実行されているWindows 7のVHDへのブート機能の称賛は誰もが歌っています。少し遅いと思われますが、VPCの速度ペナルティに近いものはありません。 私はすべてを思い通りにインストールするのにかなりの時間を費やしました。そのため、私は、Disk2VHDを使用してシステムドライブのクローンを作成し、それから起動して、VS2010をそのドライブにインストールするだけだと考えました。(私はすべてのプロジェクトを含むユーザーデータのほとんどを別のパーティションに保持しているので、複製する必要はなく、引き続き使用できます。) まあ、主に古いバージョンのDisk2VHDを使用しているという事実が原因で、いくつかの問題がありました-(試してみる場合は最新のものを入手してください。)しかし、ようやく起動しました。(Scott Hanselmanが、VHDの起動に関する優れたブログ投稿を公開しています)。 しかし、それは私が期待していた、または期待していたものとはまったく異なりました。私が期待したのは、VHDがC:ドライブになり、元の(物理)C:ドライブが非表示になるか、別の文字でマウントされ、変更から隔離および保護されることでした。 実際に得られるのは、VHDがD:ドライブになり、D:ドライブから起動しても、元のC:ドライブはまだ残っているということです。これは、VHD上のレジストリがC:ドライブ上のレジストリのクローンであり、C:へのハードコーディングされた参照が多数含まれていることを除いて、大丈夫です。つまり、結果はD:(VHD)からのもの(および変更)もあれば、C:からのもの(および変更)もあります。(cmdプロンプトを開いてSETを実行して環境変数を確認すると、D:\とC:\のパスが混在しているのがわかります。)したがって、実際には分離された環境はありません。最も重要なのは、%ProgramFiles%がC:\ Program Filesに設定されていることです。 本当に必要なのは、レジストリエントリとしてではなく、マウントされたVHD AS FILES上のレジストリファイルにアクセスし、グローバル検索を実行して、文字列内のすべてのC:\をD:に置き換えるツールです。そのようなプログラムは見つかりませんでした。(Registry Replaceと呼ばれるプログラムで実行しようとしましたが、管理者として実行している場合でも、レジストリで変更できない特定のエントリがあります。) 誰か知っていますか?または、私の問題に対する他の解決策(クリーンなVHDでゼロから始めて、Win7とすべてのプログラムをインストールする以外)。