トップ回答者
Help Viewer 2.1を強制的にインストールする方法(Visual Studio Pro 2013)

質問
-
Visual Studio 2013 Pro版で、Help Viewerのコンテンツ統合先のフォルダがそのドライブ後とハードクラッシュし、消えてしまいました。
この状態のままVisual StudioからHelpを起動すると、統合先のフォルダが無いか権利がありません、ということでHelp Viewer自体が終了してしまい、再度統合先を設定することができません(バグ)。
統合先のフォルダ等の情報をレジストリなどから探してみましたが解らず、一度 Help Viewer のプログラムフォルダを削除した状態で修復インストールを試みました。しかし、*.catファイルはプログラムフォルダ内に生成されていたものの、HlpViewer.exe等多くのファイルは修復インストールしたにもかかわらず再現されていませんでした。
しかたなく、Visual Studio自体をアンインストールし、残されているレジストリやファイルも考えられる箇所は全て削除しました。そして再インストールは成功しますが(少なくともそのようなメッセージが表示される)、上記の修復時と同じようにHelp Viewerは実際にはインストールが完了していません。コントロールパネルのプログラムのアンインストールの部分にもHelp Viewer 2.1は現われません。
Help Viewerのプログラムフォルダは以前のものを戻しても、Visual Studioからヘルプを開こうとすると 'HlpViewere.exe'が見つかりません、と表示されるだけです。いったいどこを探しているのか。
というわけで、私のシステム(Windows 7 pro 64bit)を最初からインストールし直すか(あり得ません)、現在の案件についてVisual Studioでの開発を永久に中止するかを迫られております。
ちなみに、Visual StudioのインストールDVD(iso)の中にHelp Viewerをのmsiファイルを見つけましたが、Visual Studioインストーラからの起動で無いとだめだといったメッセージが表示され、手動でインストールできませんでした。
Help Viewere 2.1をインストールして使えるようにする方法が知りたいです。
ただし、このisoファイルは若干古いものです。最新版のものはMSDNのサブスクリプションダウンロードでは重くて必ず途中で中断してしまうため(Azureが使えないことを露呈しているように思うが、おそらくあえてダウンロードを諦めさせようとしていると思われる)、しかもMicrosoftはDVDの配布を自分たちの都合で勝手にやめたため、実質入手不能です。
最後に再インストールしたバージョンはネットインストール版のもので、こちらだとなぜかさくさくとインストール(ダウンロード)が可能ですが、結果は同じでした。- 編集済み cafelasm 2013年12月13日 2:34
回答
-
その後、いくつか試しました。
- C:\Program Files (x86)\Microsoft Help Viewer の v2.1 のフォルダーを手動で削除し、プログラムのアンインストールから「変更」を押すと即座に復元され、HlpViewer.exe も復活して、書かれていた現象はうまく再現できませんでした。
- Microsoft Help Viewer 2.1 のフォルダーを消した後にアンインストーラーでアンインストールした後、以下のようなコマンドで個別のインストールが可能でした。(情報源)。ただし、言語パックが入っていないせいか、英語でした。
msiexec /i D:\packages\Help\help3_vs_net.msi VS_SETUP=0 - 再インストールしても、統合先は変わっていないのでエラーが出続けるので、仕方なく、AppData\Local の Help Viewer 2.1 関連のフォルダーを消すもエラーは消えず…、前情報では足りなかったようです。。。
- 以下の場所に LocationPath という値があるので統合先として新しく指定したいフォルダーの値に変更する。
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Help\v2.1\Catalogs\VisualStudio12 - フォルダーの中に CatalogType.xml という空のファイルを作る。
- Help Viewer 2.1 を起動する→回復。
統合先がなくなった場合のリストアに関しては確立できたように思いますが、HlpViewer.exe が回復できない件については現状何とも言えません。
中ほどにある msiexec の方法でうまくできない場合は、インストーラーのログを書き出すなど、手暇を書けて解析しなければならないと予想されます。
(正直、開発用マシンを別途手配したいような状況にあるとは思います。。。)
すべての返信
-
用語がうろ覚えで申し訳ありません。
VS2013Proで、ローカルのヘルプビューアを使用しておりました。いくつかのコンテンツを統合しました。
先日、統合先のローカルのHDDドライブがクラッシュしてしまい、内容は復旧できません。
すると、統合先のフォルダが見つからないか権利がない、といったようなメッセージが出て、その後勝手にヘルプビューアが終了してしまいます。
私は何もすることが出来ません。再度ヘルプビューアを使えるようにするにはどうすればいいのでしょうか。
レジストリを探してみましたが統合先のPathが記入されている情報を見つけられませんでした。
HlpViewer.exeを見つけてインストールのフォルダごと削除し、修復インストールしてみましたがなぜかHlpViewer.exeがインストールされませんでした。なので、今度はHelp Viewerが起動できないというメッセージに変わっただけです。
最後の手段で、VisualStudio2013そのものを完全にアンインストールしている作業中です。この後、VIsualStudio2013の使用していると思われるレジストリも手動で削除し、再度インストールを試みようとしているところです。
それにしても、なぜこれほどやっかいな話になるのでしょうか。統合先のフォルダが消えてしまうことなどよくあることでしょう。なぜプログラムが終了してしまうのか理解に苦しみます。少なくとも新しい統合先の設定画面になるべきではないでしょうか。けっこう酷い仕様だと思います。
とにかく、全てを再インストールしてもまだどこかに情報が残っていれば、私のマシンでは永久にHelpViewerを使用することが出来ませんので、手動でこれを変更する情報があれば助かります。
追記:
Visual Studio 2013をアンインストールし、さらに解る限りのレジストリの削除、フォルダの削除を行い、再度インストールし直しました。しかし、HlpViewer.exeが見つかりません、と表示されるだけです。実際、プログラムのインストール先のフォルダを確認しても、最初はあったHlpViewer.exeが再インストール後は存在しません。インストールもまともに出来なくなってしまいました。どうすればいいのでしょうか? HlpViewer.exe をインストールする方法を教えてください。
さらに追記:
ちなみに、私の使用しているインストールディスク(isoファイル)は最新では無いかも知れません。
ja_visual_studio_professional_2013_x86_dvd_3009190.iso
現在、MSDNサブスクリプションでダウンロードできるファイルは、
ja_visual_studio_professional_2013_x86_dvd_3175302 .iso
のようです。しかし、実質的にはダウンロードは不可能です。いつまで経ってもダウンロードが開始されないからです。また、Micosoftは勝手に契約内容を変更し、最新版のDVDを送らなくなりましたので、私にはこれを入手する手段がありません。
============================================
Microsoft Visual Studio Professional 2013
Version 12.0.21005.1 REL
Microsoft .NET Framework
Version 4.5.50938
インストールされているバージョン:Professional
LightSwitch for Visual Studio 2013 06177-004-0444002-02313
Microsoft LightSwitch for Visual Studio 2013
Microsoft Office Developer Tools for Visual Studio 2013 日本語 06177-004-0444002-02313
Microsoft Office Developer Tools for Visual Studio 2013 日本語
Microsoft Visual Studio 2013 コード分析のスペル チェック機能 06177-004-0444002-02313
Microsoft® Visual Studio® 2013 コード分析のスペル チェック機能
Portions of International CorrectSpell™ spelling correction system © 1993 by Lernout & Hauspie Speech Products N.V. All rights reserved.
The American Heritage® Dictionary of the English Language, Third Edition Copyright © 1992 Houghton Mifflin Company. Electronic version licensed from Lernout & Hauspie Speech Products N.V. All rights reserved.
Team Explorer for Visual Studio 2013 06177-004-0444002-02313
Microsoft Team Explorer for Visual Studio 2013
Visual Basic 2013 06177-004-0444002-02313
Microsoft Visual Basic 2013
Visual C# 2013 06177-004-0444002-02313
Microsoft Visual C# 2013
Visual C++ 2013 06177-004-0444002-02313
Microsoft Visual C++ 2013
Visual F# 2013 06177-004-0444002-02313
Microsoft Visual F# 2013
ASP.NET Web Frameworks and Tools 2012.2 4.1.21001.0
For additional information, visit http://go.microsoft.com/fwlink/?LinkID=309563
ASP.NET Web Frameworks and Tools 2013 5.0.11001.0
For additional information, visit http://www.asp.net/
NuGet パッケージ マネージャー 2.7.40911.287
Visual Studio の NuGet パッケージ マネージャー。NuGet の詳細については、http://docs.nuget.org/ を参照してください。
PreEmptive Analytics Visualizer 1.2
Microsoft Visual Studio extension to visualize aggregated summaries from the PreEmptive Analytics product.
Windows Azure Mobile Services Tools 1.0
Windows Azure Mobile Services Tools
-
HlpViewer.exeを見つけてインストールのフォルダごと削除し、修復インストールしてみましたがなぜかHlpViewer.exeがインストールされませんでした。なので、今度はHelp Viewerが起動できないというメッセージに変わっただけです。
インストーラーでインストールするものを勝手にファイルで消したら、その後がおかしくなるのはある意味自然なことです。
開発者ならなおのこと慎重に行動しましょう。プログラムのアンインストールから一覧を眺めるとわかりますが、Microsoft Help Viewer は別項目として存在します。これがインストール済みと判定されて、Visual Studio 2013 の再インストールでは回復しないのでしょう。
Microsoft Help Viewer をアンインストールすれば状況に変化は出ると思います。さて、本筋の設定データですが、%LOCALAPPDATA%\Microsoft\HelpViewer2.1 にある settings ファイルに場所の情報があるようです。
こちらのファイルを一度リネームして試してみてはどうでしょうか。
(消すのではなく、リネームを提案するのは、この案が外していた場合の回復のためです) -
HlpViewer.exeを見つけてインストールのフォルダごと削除し、修復インストールしてみましたがなぜかHlpViewer.exeがインストールされませんでした。なので、今度はHelp Viewerが起動できないというメッセージに変わっただけです。
インストーラーでインストールするものを勝手にファイルで消したら、その後がおかしくなるのはある意味自然なことです。
開発者ならなおのこと慎重に行動しましょう。
では、修復インストールとはなんのために存在するのか説明してください。実際に必要なファイルがないとき、レジストリなどのインストール情報を元に必要なファイルを復元させるのがその主たる目的ではないでしょうか? 違いますか?修復という意味をご存じですか?
なお、ファイルやフォルダのリネームと削除は同義として使用しております。
プログラムのアンインストールから一覧を眺めるとわかりますが、Microsoft Help Viewer は別項目として存在します。これがインストール済みと判定されて、Visual Studio 2013 の再インストールでは回復しないのでしょう。
Microsoft Help Viewer をアンインストールすれば状況に変化は出ると思います。
その程度のことは確認済ですが、現在そのようなものは存在しません。再インストールが成功したフリして実は失敗しているのだと思われます。
存在するのは古いバージョンのものだけです。さて、本筋の設定データですが、%LOCALAPPDATA%\Microsoft\HelpViewer2.1 にある settings ファイルに場所の情報があるようです。
こちらのファイルを一度リネームして試してみてはどうでしょうか。
(消すのではなく、リネームを提案するのは、この案が外していた場合の回復のためです)AppDataフォルダについては盲点でした。お詳しいようなのでついでに教えていただけたらと思うのですが、レジストリを使用せず、このようにファイルで設定値を保存するのは何故でしょうか。
追記:
VSアンインストール後、本フォルダを削除して再インストールしてもやはり正しくインストールが終わった振りをしてHelpViewerは印トールされませんでした。 -
確かに当初の内容に書いている点を指摘している部分がありました。(プログラムのアンインストールでの Help Viewer)
こちらの確認不十分で申し訳ありません。
トラブルが解消しない件は追加で言えることがなく、こちらも申し訳ないです。。。
(なお、Visual Studio 2013 のイメージが更新されている件は、IE10 以上でないとインストールできない問題を解消したバージョンに差し替えるという狙いだったはずなので、そのイメージは必須ではない認識です)AppData の件ですが、最近は、レジストリよりも AppData に保存される傾向があるようです。
.NET であれば Settings クラス(プロジェクトのプロパティの設定タブから設定可能)で読み書きでき、ユーザーごとに設定値を別管理できるという仕組みが用意されているというように、手軽に扱える状況になってきていること、設定値を XML で読み書きすることでユーザーが手で編集しやすくすることなどの事情があるのだと予想しています。
ただ、必ずしも AppData でなければならないといった縛りはなく、レジストリを選ぶかどうかはアプリケーション作者側が決めることになります。
(ある程度以上大きいデータはレジストリに書いてはいけないというルールはあるようです) -
その後、いくつか試しました。
- C:\Program Files (x86)\Microsoft Help Viewer の v2.1 のフォルダーを手動で削除し、プログラムのアンインストールから「変更」を押すと即座に復元され、HlpViewer.exe も復活して、書かれていた現象はうまく再現できませんでした。
- Microsoft Help Viewer 2.1 のフォルダーを消した後にアンインストーラーでアンインストールした後、以下のようなコマンドで個別のインストールが可能でした。(情報源)。ただし、言語パックが入っていないせいか、英語でした。
msiexec /i D:\packages\Help\help3_vs_net.msi VS_SETUP=0 - 再インストールしても、統合先は変わっていないのでエラーが出続けるので、仕方なく、AppData\Local の Help Viewer 2.1 関連のフォルダーを消すもエラーは消えず…、前情報では足りなかったようです。。。
- 以下の場所に LocationPath という値があるので統合先として新しく指定したいフォルダーの値に変更する。
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Help\v2.1\Catalogs\VisualStudio12 - フォルダーの中に CatalogType.xml という空のファイルを作る。
- Help Viewer 2.1 を起動する→回復。
統合先がなくなった場合のリストアに関しては確立できたように思いますが、HlpViewer.exe が回復できない件については現状何とも言えません。
中ほどにある msiexec の方法でうまくできない場合は、インストーラーのログを書き出すなど、手暇を書けて解析しなければならないと予想されます。
(正直、開発用マシンを別途手配したいような状況にあるとは思います。。。) -
言語パックのインストール名が「Microsoft ヘルプ ビューアー 2.1 Lnguage Pack - JPN」となっているのを見逃していました。コントロールパネルのプログラムのアンインストールからこれを見つけて削除し、再度Visual Studioからすべて再インストールするとやっとHelp Viewerがインストールされました。
これで初期インストール状態に戻ったと思って安心していたのですが、再度ヘルプの統合先をC以外のドライブに変更した(つもり)なのですが、何故か画面には元のデフォルトのフォルダ名が表示されているだけ。もう一度変更(移動)しようとすると、変更先にはファイルがあるからできない、というメッセージになって変更できません。それではと思い、C以外に指定したフォルダを削除してみたら今度はフォルダが見つからないか権利が無いという最初の問題に戻ってしまいました。
この状態でコントロールパネルからヘルプビューアと言語セットをアンインストールし、修復インストールしても状況は変わりません。
現在、再度VisualStudioごとアンインストールしているところです。
途方に暮れていまして、このような稚拙なツールは本来お仕事で使うべきではなく、脱Microsoftをほぼ決意しつつあるところです。一部にはまだどうしても使わざるを得ないこともあるのかもしれませんが、25年位付き合ってきたMicrosoftから離脱するいいきっかけだと思い、プロジェクトそのものを根底から見直すことにしております。
お手数をおかけしましたが、そのようなわけでこの問題はこれ以上追求する必要がなくなりました。ありがとうございました。 -
これで初期インストール状態に戻ったと思って安心していたのですが、再度ヘルプの統合先をC以外のドライブに変更した(つもり)なのですが、何故か画面には元のデフォルトのフォルダ名が表示されているだけ。もう一度変更(移動)しようとすると、変更先にはファイルがあるからできない、というメッセージになって変更できません。それではと思い、C以外に指定したフォルダを削除してみたら今度はフォルダが見つからないか権利が無いという最初の問題に戻ってしまいました。
前回の私の投稿が雑多に書いていたので申し訳ないですが、そのように陥るのは前回の投稿に書いています。
この現象が起こる原因を推測するに、Help Viewer のインストールと、コンテンツのありかを示す情報は別扱いされているのではないかと考えていますし、実際にそのように動いていそうです。
従って、この不具合が修正されるまでの間は、手動でレジストリを修正する必要があります。私のコンテンツの紹介となるようで申し訳ないですが、こちらも参考までに。
http://wp.me/p19AcI-6c
- 編集済み AzuleanMVP, Moderator 2013年12月21日 12:12