あれやこれやで時間が掛かり、結局仕事にならなかった。スクリーンショットを撮る心理的余裕さえない。これはドキュメンタリーである。
まずWindows 8.1の時には確かにインストール済みだったSilverlightが消えた。Silverlightを前提とするアプリを起動して発覚。消した覚えはないが、容疑者が多すぎて犯人が特定できない。
- Windows 8.1で「動作を停止しました」頻発が、Windows 10へのアップグレードの切っ掛けだった。Windows 8.1の時点で壊れていたかも。
- BizSparkでmsdn subscriptionやAzure、Office365のアクティベートを行い、Visual Studioなどが色々インストールされている。VSにはSilverlight開発環境もある。Windows 8.1の時点でVS 2013とVS 2015 Communityがインストールされていて、2つはいらないのでVS 2015 Enterprise 1本に入れ替えようとしたら、いずれもアンインストールできなかった。
- Windows 10にアップグレードした。
- Windows 10にアップグレード後、VS 2013とVS 2015 Communityがアンインストールできるようになったので、VS 2013をアンインストールし、VS 2015 Enterpriseを上書きインストール。
Silverlight関係だけでもこれだけある。そして問題は、Silverlight5がインストールできないことだった。何も情報を残さずインストール失敗になる。コントロールパネルの「プログラムと機能」で見てもSilverlightはリストに無いのでアンインストールもできない。どうやらレジストリから消せば良さそうということで、やってみた。
上にも書いたようにVS関係でもSilverlight開発環境があるので沢山ヒットする。VSは修復インストールすればいいので、ガンガン消した。各言語ごとにライブラリが分かれていて、それが全部レジストリに書かれていて、なおかつSilverlightのBuild番号がフォルダ名に使われていて、最初にインストールしたBuildからアップデートされたBuildまで複数のレジストリキーやレジストリ値が存在する。腕がつりそうになるほど消しまくった。確実に数100はあった。
しかし、それでもインストール失敗になる。破損した Silverlight インストールをクリーンアップし、Silverlight を再インストールする方法を見ていると、SilverlightのFix itがある。Fix itを実行しても「未知の失敗」になるし、Fix itや手動の解決方法はエラーである。手作業でレジストリキーやレジストリ値を消しても、このKB2608523でも壊れたSilverlightはどこかに何かを残していて、インストール失敗する。あと、ダウンロードしたSilverlightのインストーラでは何も情報が出ないが、Silverlightを必要とするアプリのほうからSilverlightの最新版インストールを選ぶと、なぜかc:\windows\system32にmsiexec.exeが無いというエラーになる。もちろん存在している。
リンクを見つけられないが、マイクロソフト コミュニティのやりとりで、Silverlight3のリンクがあったので、Silverlight3を入れてみた。Silverlight3はすんなりインストールできた。しかし目的とするプログラムはSilverlightでは動かないようで、Silverlightが無いエラーも出なくなり、だんまりである。
Silverlight3はアンインストールも問題ない。しかしその後にSilverlight5はインストール失敗になる。
あんまりSilverlightのインストールフォルダやレジストリを見過ぎていたので、ある手段を思いつく。他のPCで動いているSilverlight5をSilverlight3に上書きしてしまう案である。「よいこはマネしちゃダメだよ」というやつである。
しかしSilverlightは、単に上書きしてもレジストリを参照しながら動くMicrosoft謹製のソフトであり、まずそのままでは動かないだろう。上書き後にSilverlight3でインストールされているレジストリキー/値を、Silverlight5のBuild番号に書き換える必要がある。
やりましたよ、もう。
Win8.1のときSilverlightを入れていたのに、Win10にアップグレードしたら壊れてた。インストールしようとすると失敗する。 頭に来たので、(続く)
— shigeo_t (@shigeo_t) 2015, 8月 8
(続き)Silverlight3をインストールして(3なら失敗しない)、他のPCからSilverlight5を上書き、その内容に合わせてレジストリを修正しまくった。動いた。1時間掛かった。
— shigeo_t (@shigeo_t) 2015, 8月 8
各言語ごとにレジストリキー/値があったりするので、日本語のja以外は無視した。フォルダはこんな感じになっている。
レジストリはこんな感じでSilverlight3も残っている。
で、ここまでですでに2,000文字超えているのだが、もう一つは未解決。
今までトリプルディスプレイだったW520。NVIDIAのドライバやユティリティのアップデートをしたら、外付けディスプレイ2つを認識しなくなった。状況を切り分けてみると下記の通り。
- Display PortとVGAの2系統で外付けディスプレイをつないでいるが、片方だけにするとそれぞれ認識してデュアルディスプレイにはできる。
- W520はIntel HD Graphics 3000が内蔵ディスプレイ、NVIDIA Quadro 2000Mが外付けディスプレイを見る分担になっているが、Intel Graphics 3000を無効にすると3ディスプレイで使える。ただし、内蔵ディスプレイは1024x768になる。通常は1600x900なので間延びしている。
- NVIDIAコントロールパネルでは、Intel Graphicsを認識できなくなっている。もともとこういう感じだったのが、
Intel Graphics 3000が無い。
- ディスプレイ設定は、外付けディスプレイを2枚にすると、認識がおかしくなることは確認できた。
つないだ瞬間に「複数のディスプレイ」項目はブランクになりディスプレイも1枚(内蔵)になってしまう。
クリーンインストールなら直るかもと思い、前回X200に使ったHDD(HGSTの7,200rpm)を引っこ抜き、W520でWindows 10 Enterpriseをクリーンインストールしてみた。どうせX200ではトラックポイント廻りに不調があるので残しても仕方ない。
しかし、 結果から言うとクリーンインストールでも事象は変わらず。ハードウェアがおかしくなっているのか、Windows 10がおかしいのかは分からない。しばらくはデュアルディスプレイで乗り切るしかない。土日はいいんだけど、月~金は不便。直るまでは3枚目はX220から出力しようと思う。
ヒューレット・パッカード ZR2440w プロフェッショナル液晶モニター XW477A4#ABJ
- 出版社/メーカー: ヒューレット・パッカード
- メディア: Personal Computers
- この商品を含むブログを見る
[HGST] 日立 2.5inch HDD 200GB SATA 7200回転 512セクター (非AFT) HTS722020K9SA00
- 出版社/メーカー: HGST 日立グローバルストレージテクノロジーズ
- メディア: エレクトロニクス
- この商品を含むブログを見る
iiyama 昇降・ピボット機能対応 WLEDバックライト搭載 21.5型ワイド液晶ディスプレイ ProLite B2280HS-B1
- 出版社/メーカー: マウスコンピューター
- 発売日: 2013/04/22
- メディア: 付属品
- この商品を含むブログ (1件) を見る