Sembra un problema non troppo difficile e, dopo diversi ostacoli, sono incredibilmente vicino. Ma non riesco proprio ad arrivarci.
Sto eseguendo Windows 7 nel negozio di sviluppo. Voglio iniziare a usare VS2010 per lavorare su alcune cose che non verranno rilasciate per un po '. Il mio capo non ha detto alcun codice beta sulla macchina di produzione, ma potrei eseguire VS2010 per questo progetto SE potrei farlo in un ambiente isolato, come un PC virtuale.
Bene, ho usato la beta e RC di Win7 su VPC prima, ed era dolorosamente lento a causa dell'ambiente VPC. Ma tutti hanno cantato gli elogi della funzionalità boot-to-VHD di Windows 7, dove solo il disco è virtualizzato e in realtà stai eseguendo sull'hardware. Presumibilmente un po 'più lento, ma in nessun luogo vicino alla penalità di velocità di VPC.
Ho trascorso un bel po 'di tempo a installare tutto nel modo desiderato. Quindi ho pensato che avrei solo clonato il mio disco di sistema usando Disk2VHD, e mi avvierei, quindi avrei installato VS2010 su quello. (Conservo la maggior parte dei miei dati utente, compresi tutti i miei progetti, in una partizione separata, in modo che non debba essere duplicato e sarebbe comunque disponibile.)
Bene, ho avuto alcune difficoltà con questo, principalmente a causa del fatto che stavo usando una vecchia versione di Disk2VHD - (ottieni l'ultimo se hai intenzione di provarlo.) Ma alla fine l'ho avviato. (Scott Hanselman ha un buon post sul blog per l'avvio su VHD).
Ma non era esattamente quello che mi aspettavo o speravo. Quello che mi aspettavo era che il disco rigido virtuale sarebbe diventato l'unità C: e l'unità C: originale (fisica) sarebbe stata nascosta o montata sotto una lettera diversa, e quindi isolata e protetta da eventuali modifiche.
Quello che effettivamente ottieni è che il disco rigido virtuale diventa l'unità D: E si avvia dall'unità D: MA, l'unità C: originale è ancora lì. Il che è in qualche modo OK TRANNE che il Registro di sistema sul disco rigido virtuale è un clone del Registro di sistema su unità C: e include molti riferimenti codificati a C :. Quindi il risultato è che alcune cose vengono (e modificano) D: (il disco rigido virtuale), ma alcune cose vengono (e modificano) C :. (Se apri un prompt cmd e fai un SET per esaminare le variabili di ambiente, vedrai un mix di percorsi D: \ e C: \.) Quindi non ho un ambiente isolato. Ancora più importante,% ProgramFiles% è ancora impostato su C: \ Programmi.
Quello di cui ho veramente bisogno è uno strumento che possa accedere ai file di registro sul VHD AS FILES montato, non come voci di registro, e fare una ricerca globale e sostituire tutte le stringhe C: \ in D :. Non ho trovato un programma del genere. (Ho provato a farlo con un programma chiamato Registry Replace, ma, anche quando si esegue come amministratore, ci sono alcune voci che il Registro non ti consente di cambiare.)
Qualcuno ne conosce uno? O qualsiasi altra soluzione al mio problema (diverso da ricominciare da zero con un disco rigido pulito e installare Win7 e tutti i miei programmi su di esso.)?