2017年9月26日火曜日

VisualStudio のインストールドライブを移動したお話。

C:ドライブの容量確保のため、インストール済みの Visual Studio 2015 と Install Shield LE 2015 をD:ドライブに移そうとして、(例によって)ハマってしまったので、記録しておきます。

手順はカンタンのはずでした。
1.Install Shield LE 2015 をアンインストール
2.Visual Studio 2015 をアンインストール
3.Visual Studio 2015 を D:ドライブにインストール
4.Install Shield LE 2015 をD:ドライブにインストール
5.既存のプロジェクトをビルドしてみる。

【事件番号1:インストール先のドライブやフォルダを変更できない】
3.の手順で VisualStudio 2015 のインストーラを起動しても、インストール先フォルダーの変更ができないんです。
[...]ボタンがディゼーブルで押せないんです。
このままだと、再び C:\Program Files (x86) にインストールすることになってしまいます。

いろいろネットで調べてやってみた。
1.インストーラの引数にパス名を指定。
コマンドプロンプトからインストーラを指定して、/CustomInstallPath パラメータでD:ドライブのパス名を指定してみました。
結果:ダメでした。
インストール先は、指定したフォルダになりませんでした。


2.VisualStudio 完全アンインストーラってのがネット上にあったのでダウンロードして実行。
https://github.com/Microsoft/VisualStudioUninstaller/releases
参考URL
https://qiita.com/yizumi1012xxx/items/b13314c12d5dec627ad7
結果:ダメでした。
インストール先を指定できません。

もうちょっと調べてみました。

3.レジストリエディタでパス情報を変更
この方法は危険なので注意して行ってくださいませ。
(1)[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Components]を開きます。
(2)[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Components]をエクスポートして file1.reg として保存しておきます。
(3)Visual Studio 2015 をインストールします。
(4)[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Components]をエクスポートして file2.reg として保存します。
(5) file1.reg をインポートします。
(6) file2.reg をインポートします。
参考URL
https://social.msdn.microsoft.com/Forums/vstudio/ja-JP/26fb86e2-edc9-40fb-a004-1abbfb93a9e4/visual-studio-community-2015-d?forum=vsgeneralja
結果:うまくいきました。

インストール完了です。実行してみました。

【事件番号2:%CommonDir%\dte80.olb がないなどのエラー】
起動してみると、いくつものファイルがないというエラーが出てしまいました。
ネット上を検索すると、ファイルを探してコピーすればいい、という記事と、 regsrv32.exe で登録すればいいという記事が見られました。
が、CドライブやDドライブを探しても該当ファイルがなかったのでした笑

んで。

1.インストーラを再度起動して「修復」を選択してみました。

無事、動かせるようになりました。
どうやら、最初にインストールしたとき「管理者として実行」をしなかったのが原因のようでした。

スクリーンショット取ってなくてすみません。m(_._)m

Cドライブがいっぱいになってしまった

起動を早くするためCドライブはSSDにしてるけど、いかんせん容量が少ない。


以前、iTunesのバックアップフォルダをシンボリックリンクを使って別のドライブに移動したことがあって、その方法を使ってSSD上には不要だと思われるファイルを移動することにしました。

で、どこか退避できそうにないかとドライブの中身を覗いてみて、C:\ProgramData 約38GBを別のドライブに移そうと試みたんです。
結果的には失敗してしまいました。(笑)
カスペルスキー(ウィルス検査ソフト)と、Windows フォルダのいくつかのファイルをコピーすることができなくて(アクセス権の問題とかいろいろ)あきらめて・・・

C:\ProgramData\Package Cache のフォルダを移動してみましたので、手順を書いときますね。

まずコマンドプロンプトを管理者として起動します。(※ここ大事。追記しましたw)

次に、別ドライブにフォルダを作ります。
C:\>F:
F:\>mkdir ProgramData
cd ProgramData
F:\ProgramData>mkdir "Package Cache"

ファイルの中身をコピーします。
robocopy というコマンド、初めて使いましたが、いろいろ失敗しました。
エラーが出るフォルダについては、この手順を実行できませんね。

結局、
robocopy /XJ /MIR "C:\ProgramData\Package Cache" "F:\ProgramData\Package Cache"
を実行してコピーに成功。

エクスプローラで、C:\ProgramData\Package Cache を削除します。

んで、シンボリックリンクを貼ります。


シンボリックリンクを貼ると、指定のフォルダへのアクセスがリンク先へのアクセスに変更されます。
これで、Package Cache の内容を別のドライブに移すことができました。

これだけで10GBほど空き容量を増やすことができました。

少し不安だったので、C:ドライブ上にインストールしていた Visual Studio 2015 もアンインストールして D:ドライブに再度インストールしなおしました。
VS2015のアンインストールと再インストールでは、とても苦労することになったので、別の記事にまとめようと思います。

最終的にドライブの容量を見てみると、


22.5GBの空き容量を48.0GBまで増やすことができました。(^^)v