web-dev-qa-db-ja.com

Visual Studio 2012のインストールディレクトリを変更する方法

Windowsインストーラーを使用してVS11をアンインストールし、それに関連するレジストリキーをほぼすべて削除しましたが、再インストールしようとすると、これでポップアップします。

そして、「...」をクリックすることも、パスを編集することもできません。右クリックしても何も起こりません。

インストールディレクトリを変更するには、何を破棄する必要がありますか?


公式リリースでまだ起こっています:

37
mpen

「c:\ program Files」に強制的にインストールするのではなく、Visual Studio RCに使用したディレクトリにインストールすることを強制しましたが、同じ問題がありました。プロセスモニターとセットアップのログファイルを使用した後、削除する必要があるレジストリキーを見つけることができました。

キーはにありました

HKLM\Software\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-21-776561741-789336058-725345543-318838\Components\31F687BD8A467D54C830E018D99F7F3B

SIDは他のシステムとは異なる可能性が高いですが、最後の文字列(31F687BD8A467D54C830E018D99F7F3B)を見つけることができる場合があります


キーを見つけるために、私は次のことをしました:

  1. SysinternalsからProcessMonitorをダウンロードしました
  2. フィルターを使用してProcessmonitorを開始しました

    イメージパスはvs_premium.exeで終わります

  3. Vs_premium.exeを開始しました

  4. セットアップを閉じました
  5. Processmonitorがイベントをフェッチしなくなるまで待機しました
  6. %TEMP%から最新のdd_vs_premium_.logファイルを開きました
  7. 何かを探して見つけた

    条件 'VS_Install_path_KeyExists'がfalseと評価されました。 (影響を受けたシステムではtrueと評価されると思います。これをWindowsのクリーンインストールで試しました)

  8. その上の1行は言った

    レジストリキーが見つかりません。キー= 'SOFTWARE\Microsoft\VisualStudio\SxS\VS7'

  9. 検索

    Microsoft\VisualStudio\SxS\VS7

    processmonitorで

  10. ProcessMonitorの下の数行に、削除する必要があるキーが表示されます

50

私が見つけた唯一の解決策は、Windows 7上で、Visual Studioをインストールするディレクトリへのハードジャンクションリンクを作成することです。

たとえば、SSDドライブはブートドライブではなく、ドライブ文字がB:です。

私は次のコマンドラインを実行します

mklink/J "C:\ Program Files(x86)\ Microsoft Visual Studio 11.0" "B:\ Program Files(x86)\ Microsoft Visual Studio 11.0"

インストーラーとWindowsにとっては、B:ドライブのProgram Files x86フォルダーに実際にインストールしたときに、C:ドライブのProgram Files x86ディレクトリーにインストールしたと考えられます。

Windows Vistaおよび7でのジャンクションリンクの作成に関するページへのリンクを次に示します。 http://www.howtogeek.com/howto/windows-Vista/using-symlinks-in-windows-Vista/

6
Josh DeLong

よりシンプルなアプローチが私のために働いた:

1-次のように、/ uninstall/forceスイッチを使用して、コマンドラインからインストーラーを実行します。

c:\vs_professional_ENU.exe /uninstall /force

2-インストーラーを通常どおり再実行します。

Windows 10のVS2015でこれを行いました。 参照リンク

6
JosephStyons

上記の投稿にコメントする担当者がいません。これらのコマンドスイッチの構文は正しいのですが、プログラムにバグがあり、CustomInstallPathを選択しても機能しません。実際、私にとっては、プロセスリストでvs_ultimate.exeの反復を約50回以上開くことにしました...

上記のようにハードジャンクションを試してみます。

補足として、誰かが興味を持っている場合は、vs_ultimate.exe/Layout X:\ somefolder \を実行して、事前にインストールを取得できるスイッチを使用できます。

私は昨夜それをしました、そして私は情報を持っているので私のインストールが速く行くことを願っていますが、オフラインバージョンを強制的に使用するにはvs_ultimate.exe/nowebを実行する必要があると思います。

このページはすべてのスイッチに言及しています: http://msdn.Microsoft.com/en-us/library/e2h7fzkw(v = vs.110).aspx

上記のページでは、次のことに注意してください。/ p CustomInstallPath "指定したディレクトリにすべてのターゲット変更可能なパッケージをインストールします。" Thayは、あなたのルートドライブからインストールできるものは何でも静かに言うかもしれませんが、それは確かなことではなく、SSDのスペースが限られています。

ハードジャンクションを試す前に、上記を試してheppensを確認し、必要に応じてそれをアンインストールすることもできます。結果を投稿します

4
Allan

次のオプションを使用してインストーラーを起動してみてください。

/p CustomInstallPath="[your_path]"

例えば:

vs_ultimate.exe /p CustomInstallPath="C:\MyDirectory"

すべてのオプションを表示するには、スイッチ/?を使用します

2
BryanJ

Visual Studio 2012のインストールディレクトリを変更する方法インストールディレクトリを変更するには、何を破棄する必要がありますか?

回答:インストールディレクトリを「破棄または変更」することなく、物理ディレクトリを変更できます。これは、「より難しくなく賢く考える」ソリューション提案の代替案です。

論理的なM:\ Program Filesディレクトリを引き続き使用し、ファイルが保存されている物理的な問題を解決するために必要な特定のマテリアルの詳細を以下に示します。

また、ベータビルドを使用する場合のクリーンで再現性の高いインストール、少ない労力とリスクのために、コミュニティの他の部分にも役立ちます。ベータ版のインストールですべてのファイルをカプセル化するため、リスクが少なくなります。ベータ版からRC版に移行しても問題ありません。ベータ版ドライブをマウントせず、シェルレジストリクリーナーを使用して、毎回クリーンドライブからフレッシュドライブに再インストールしてください。

このプロセスでは、必要に応じてログイン/ログアウト/バックアップできるPGPディスクを使用します。

最初は、たった2つのドライブを作成できるように思われました。そうではありません。 -f:\ Program Files(x86)\ Microsoft Visual Studio 11.0のF:\としてマウントされたドライブ#1これは、ファイルをインストールするVisual Studioセットアップを指定した場所です。また、2.7ギガのファイルのマウント可能なコンテナーとして機能します。

  • 「C:\ Program Files(x86)\」にフォルダとしてマウントされたドライブ#2「Microsoft Visual Studio 11.0」マウントされたフォルダの目的は、5.5ギガのファイルの残りを収集することでした。

33個の作成されたフォルダーの実際のリストは、追加のPGPフォルダーに移動する必要がありました。

セットアップがファイルを展開する前に作成できるフォルダーの包括的なリストを次に示します。

C:\Program Files\Microsoft SQL Server
C:\Program Files\Microsoft SQL Server Compact Edition
C:\Program Files\Application Verifier
C:\Program Files\MSBuild
C:\Program Files\Microsoft
C:\Program Files\IIS Express
C:\Program Files\IIS
C:\Program Files\Microsoft Visual Studio 11.0

C:\Program Files (x86)\IIS
C:\Program Files (x86)\IIS Express

C:\Program Files (x86)\Microsoft ASP.NET
C:\Program Files (x86)\Microsoft Help Viewer
C:\Program Files (x86)\Microsoft SDKs
C:\Program Files (x86)\Microsoft SQL Server
C:\Program Files (x86)\Microsoft SQL Server Compact Edition
C:\Program Files (x86)\Microsoft WCF Data Services
C:\Program Files (x86)\Microsoft Web Tools
C:\Program Files (x86)\MSBuild
C:\Program Files (x86)\NuGet
C:\Program Files (x86)\Windows Kits

C:\Program Files (x86)\Common Files\Merge Modules
C:\Program Files (x86)\Common Files\Microsoft
C:\Program Files (x86)\Common Files\Microsoft shared\DevServer
C:\Program Files (x86)\Common Files\Microsoft shared\MSDesigners8
C:\Program Files (x86)\Common Files\Microsoft shared\MSEnv
C:\Program Files (x86)\Common Files\Microsoft shared\MSI Tools
C:\Program Files (x86)\Common Files\Microsoft shared\SQL Debugging
C:\Program Files (x86)\Common Files\Microsoft shared\SQL Server Developer Tools
C:\Program Files (x86)\Common Files\Microsoft shared\TextTemplating
C:\Program Files (x86)\Common Files\Microsoft shared\Visual Database Tools
C:\Program Files (x86)\Common Files\Microsoft shared\VS7Debug
C:\Program Files (x86)\Common Files\Microsoft shared\WF
C:\Program Files (x86)\Common Files\Microsoft shared\Windows Simulator

これは防ぐのに最適です。 -意図せず監視されず、監視されず、意図的で無知な至福で監査されていないパッチマネージャーおよびパッチ管理システムは、生産変更管理のベストプラクティスへの適切な昇進の前提に違反します

  • コードを作成する開発者はほとんど偶然に働いており、最終製品に何が含まれているのか全く分かりません。

  • ビルド環境のハッカー利用。

True CryptまたはPGPデスクトップを使用できた可能性があります。ディスク全体の暗号化ではなく、リソースをマウントおよびアンマウントできる必要があります。

ハードジャンクションアプローチには感謝していますが、ドライブを安全に取り出して電源をオフにしない限り、プロセスへのコンプライアンスはほとんどなく、安全なPGPのアンマウント/マウントと比較して安全でも信頼性でもありません。開発者は、ドライブの電源を入れて変更を加えるだけです。

バックアップと復元の作業レベルに関して、ハードジャンクションドライブと比較したPGPドライブのバックアップは、ほぼ同じレベルの作業です。しかし、どのフォルダーがジャンクションされているかを覚えておく必要がないという価値は、開発環境を復元するために復元する必要がある場合があるため、必要なすべてのフォルダーを含む。

これは、要件が再現可能なセキュアビルドのための必須の非裁量的で絶対的な監査可能な保証である場合の環境と考えてください。その中核となる目標を達成するためには、実際に「必要」な場合にのみ利用可能でなければならず、不要な場合は保護する必要があります。

1
user2877445

私にとって、最終的なVisual Studio 2012は、(アンインストールされた)ベータ版と同じパスにインストールすることを望んでいました。 HKLMでセットアップディレクトリと完全に一致するもの(\で終わるもの、たとえばC:\VS11Beta\で終わるもの)のほとんどを削除し、セットアップで再度選択できるようにしました。

おそらくOP(M:\Program Files)の解決策は一般的すぎて削除できないように思われますが、おそらくこの問題を抱えている他の人たちにとってはそうでしょう。

1
CodesInChaos

以前にVS 2012 Test Controllerをインストールしました。アンインストールすると、インストールパスを変更できました。

1
PeterX

まだ解決策を探している人にとって、この問題から私が試し、学んだことは、「コントロールパネル」から「通常」をアンインストールしても、VSのすべての署名が削除されないということです。そのため、コマンドラインから強制的にアンインストールして、すべてのVSフットプリントを削除します。スタックオーバーフローで次の答えが非常に役立つことがわかりました。

引数を指定してコマンドライン(Admin)でインストーラーを実行します。

vs_community_ENU.exe/uninstall/force

次に:

vs_community_ENU.exe(またはprofessional/enterprise)を実行します。

別のドライブにVisual Studio 2015をインストールする方法

0
Nitheesh George

インストールされているプログラムを調べて、Visual Studioのインスタンスが既にインストールされている場合は削除し、セットアップを再実行します。

0
D.Snap