【Windows10】またフォントが消えた

朝、スリープからの復帰に失敗した。

(例のHDD切断問題の検証をしている真っ最中)

 

 

オイー('A`)

 

 

 

 

復帰に失敗というか、起きたら動いている音がしていて

ディスプレイを開けてもマウスを動かしてもキーボードを押しても

黒い画面のまま変化無し。

 

オイー('A`)

 

そういうこともあろうかと大事なものはセーブしてあるし、被害はほとんどないのが救い。

 

仕方なく電源を長押しして強制シャットダウン→通常起動

しばらく待たされた起動の途中「正しく終了されませんでした」的な青画面が出て

また再起動しやがったw

 

 

そもそもログオン画面が表示されるまでが遅いし、

パスワード入力蘭が出るまではそれなり早いけど

実際に入力できるまで割と待たされるし

そこからグルグルしたままデスクトップが表示されるまで時間がかかるし

デスクトップが表示されても裏で一所懸命なんかやってるから

アプリとか立ち上がるのにも待たされて

"まともに"使えるようになるまで5分ぐらい待たされる気がする。

ウチのデスクトップ達はWin10になってから起動が速くなった印象が強いのだが。

やっぱりネックはHDDか。

 

 

 

消えた・・・

 

気を取り直して作業しようとExcelを開いたら一部の列が消えている。

カーソルを合わせると値は見えるので色を自動にしてもやっぱり表示されない。

一瞬壊れたかと思ったけど、思い出してみると消えている列はフォントを変えていた。

そのフォントは例によってショートカットでインストールしたもの。

 

・・・ということは・・・

C:\Windows\Fontsの中を見ると

ショートカットでインストールしているフォントがことごとく無い。

またかよ。

例によってレジストリエディタを起動して

コンピューター\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts

を見ると、ここにはフォントが存在しているように設定されている。(ように見える)

 

 

イベントビューアーで確認。

 

レベル エラー
ソース Service Control Manager
イベントID 7000
タスクのカテゴリ なし
詳細 Windows Presentation Foundation Font Cache 3.0.0.0 サービスを、次のエラーが原因で開始できませんでした:
そのサービスは指定時間内に開始要求または制御要求に応答しませんでした。

 

エラーが出ていた。

勝手に崩壊したよこのバカチンは(ノ∀`)

そこがM$クオリティ。

 

 

念のためにもう1度再起動。

でもフォントのショートカットは復活しなかった。

どうやら無かったことになったらしいw

 

前にやった通り、レジストリから追加フォントの設定を消して、

フォントキャッシュ(C:\Windows\System32\FNTCACHE.DAT)も消して再起動。

 

追加分のフォントをショートカットでインストール・・・・・しようと思ったがやめた。

良い機会だ。

必要なのだけを(ショートカットではなく)普通にインストールして、

それ以外は必要なときだけインストール/アンインストールするようにNexusFontで管理しよう。

 

NexusFontに追加フォントが格納されているディレクトリを登録したら

一覧表示にめっちゃ時間がかかる。なんだこれ。

測ってみたら1分12秒。(336個のフォント)

そこからインストール済みのディレクトリを選択したら

 

応答無し

 

この有様w

今度は一覧表示まで1分1秒。

 

異様に重くないか。

追加フォントのディレクトリ構造を変えたけど、

グループ分け(セット)した設定は自動的に無効になったり(=消えたり)せずに残ってる。

これが原因とは思えないけど消しておこう。

 

・・・・・どうやって消すのコレ。

セットを選択して中身全部除去とかできると思って右クリックしたら

「リネーム」「セットを削除」しかない漢らしい仕様。

フォント一覧を表示した状態で「Ctrl+A」→「セットから除去」が正しいのか。

 

古い情報は消したけど、一覧を表示する時間は変わらない。

NexusFontのダイアログが出ている間"Windows font cache service"が

猛烈にリソースを食っているので、遅い原因はWindows側なんだろうか。

っつーか、次の読み込みを早くするためにキャッシュを作るサービスだと思うんだけど

毎回ブン回っているのでとても役立たずな雰囲気

 

 

NexusFontになんか設定があるのかと見ていたら「重複フォント検索」なる機能を発見。

別に今は関係なさそうだけど、興味本位で

c:\windows\fontsと 追加フォントが格納されているディレクトリを検索してみる。

 

205件の重複

 

200個以上重複として検出された。そんなバカなw

追加フォントがc:\windows\fontsに実ファイルとして存在し重複している と。

 

そもそもショートカットでインストールしているから実体があること自体おかしいし、

仮にショートカットが見えていたんだとしても数が合わない。

 

NexusFontがおかしいんじゃないのかと疑わしくなってくる。みんな大絶賛しているけども。

エクスプローラーでc:\windows\fontsを見ても該当するファイルはない。

「保護されたオペレーション システム ファイルを表示しない」のチェックを外したけど

やっぱり出てこない。

 

コマンドプロンプトで見ると

 

居た

 

あ、居るっぽい。

※数が合わないのは、エクスプローラー上で表示しているフォントの一部が

(フォルダみたいに)階層構造になっていたり、システムフォントが表示されないから。

何故エクスプローラー上で見えないかはわからんけど

実体として存在していることはわかった。

 

ふと閃くものがあったので、GIMPを時間測りながら起動。

2分40秒。安定の遅さだw

 

 

 

重複分を削除してみた

 

なんか問題が起きるかもしれないけど、意を決して重複分(c:\windows\fontsの方)を削除。

いっぺんに全部消そうとしたらNexusFontダンマリ。

固まったわけではなく、処理が走らないw

選択する数が少なければ動くっぽいのでチマチマ消す。バグじゃね?

 

全部消し終わってからc:\windows\fontsの中を見ると

まだ重複したものが残っている・・・。

日付でピックアップできたので、DOS窓からdelコマンドで消す。

アクセスが拒否されたってファイルがいくつかあったけど、だいたい消すことができた。

 

ここでGIMP起動・・・・・1分5秒で起動したw

やっぱり見えないフォントが悪さをしていたか。

でもNexusFontの読み込み時間はあまり変わらなかった。

 

うーん、わからん。

 

 

(しばらく期間)

 

 

ここのネタを書くために、何の気なしにDOSでc:\windows\fontsの中を表示したら

消そうとして消せなかったフォントがあったのを思い出してしまった。

 

 

 

色々試してみた。

 

見えたり見えなかったり、ソフトによったり とよくわからんので、

色々操作してどうなるのか試してみた。

アプリはフォント管理ツール(NexusFont)、スタンダードなヤツ?(Excel)、ショートカットが見えないツール(GIMP)を選んでみた。

 

消せなかったフォントがc:\windows\fontsに実ファイルとして存在。・・・(1)

 

  • エクスプローラー上でフォントは見えない
  • レジストリの一覧には表示されていない。
  • DOS窓(でc:\windows\fontsをdir)の一覧には実ファイルがあるように見える。
  • NexusFontのインストール済み一覧に表示されない。重複フォント検索に引っかからない
    (重複として出るものと出ないものがあり、今回のファイルは前にチェックしたときに出てこなかったものなので動きとしては正しい・・・が実ファイルがあるなら重複になるはず と思うのだが。
  • Excelのフォント一覧に表示される
  • GIMPのフォント一覧に表示される

 

(1)の状態で、消せなかったフォントをショートカットでインストールする。・・・(2)

 

  • エクスプローラー上にショートカットのアイコンでフォントが表示される。
  • レジストリの一覧にはショートカット元ファイルのフルパスが表示される。
  • DOS窓の一覧には表示される。
  • NexusFontのインストール済み一覧に表示される。重複フォント検索に引っかからない。(実ファイルがあるはずなのに・・・動きが怪しいw
  • Excelのフォント一覧に表示される。
  • GIMPのフォント一覧に表示される。

 

(2)の状態で、新たにダウンロードしてきたフォントをショートカットでインストールする。・・・(3)

 

  • エクスプローラー上にショートカットのアイコンでフォントが表示される。
  • レジストリの一覧にはファイルのフルパスが表示される。
  • DOS窓の一覧には表示されない。(ん?そうなのか?
  • NexusFontのインストール済み一覧に表示される。重複フォント検索に引っかからない。(検索対象のフォルダに入っているんだが、正しい・・・のか?
  • Excelのフォント一覧に表示される。
  • GIMPのフォント一覧には表示されない。(※こういう仕様

 

(3)の状態で、新たにダウンロードしてきた別のフォントを普通にインストールする。・・・(4)

 

  • エクスプローラー上では普通のアイコンでフォントが表示される。
  • レジストリの一覧にはファイル名のみが表示される。
  • DOS窓の一覧に表示される。
  • NexusFontのインストール済み一覧に表示される。重複フォント検索に引っかからない。(絶対おかしいw
  • Excelのフォント一覧に表示される。
  • GIMPのフォント一覧に表示される。

 

ちょっと思いついたので

(4)の時にインストールしたフォントをショートカットでインストールする。・・・(5)

※インストール時に「既にインストールされているので置換するか」のダイアログが出る。

でも(2)の時には同じ状態なのに出なかった。何故だろ。

 

  • エクスプローラー上はショートカットのアイコンに変わる。
  • レジストリの一覧ではフルパスに変わる。
  • DOS窓の一覧に表示される。(消えないんだ・・・?
  • NexusFontのインストール済み一覧に表示される(パスはショートカット元に変わる)。重複フォント検索に引っかからない。(正しい気もするが信用ならんww
  • Excelのフォント一覧に表示される。
  • GIMPのフォント一覧に表示される。

 

(5)の状態で、(3)(5)のフォントをエクスプローラー上から削除する。・・・(6)

 

  • エクスプローラー上からは当然消える。
  • レジストリの一覧からも消える。
  • DOS窓の一覧に(4)のフォントが表示される。(何故消えない?
  • NexusFontのインストール済み一覧から消える。重複フォント検索に引っかからない。(本来は正しいが信じないw
  • Excelのフォント一覧から消える。
  • GIMPのフォント一覧は(3)が消え、(5)が表示される

 

 

つまり・・・?

 

犯人はこの中にいる!(いねーよ

 

  • エクスプローラー上からフォントを消してもコマンドの結果を見る限り実ファイルは残る。(ショートカットインストールでの置換は表面的にしかされていない)
  • エクスプローラーはレジストリと同じ見え方をする。
  • DOS上ではショートカットでインストールしたフォントは表示されない。
  • NexusFontは一覧の表示にやたら時間がかかるくせに、アプリを再起動しないと反映されない。(なんのために時間かけて一覧表示してるんだw)
    そして重複フォント検索はどこを見ているのか全然わからず全く信用できないw
  • Excelは再起動をしないと反映されないのは想定通りで一見問題なさそうだけど、実はショートカットでインストールしたけど消えたフォントを含んだ一覧が表示され、それを選ぶとちゃんと反映される。どこ見てるんだ?(ちなみにWordでもNotepadでも同じ)
  • GIMPも再起動しないと反映されないが想定通り。こいつはわかりやすくて、フォントの格納先を指定する設定項目があって、そこに指定された実ファイルのみが一覧に表示される。

 

 

色々試してゴチャゴチャ書いたけど、

ショートカットでインストールしたフォントが消えるのは避けられないし、

エクスプローラー上でフォントを削除しても実ファイルが消えないのは理解できないし(バグだろう)、

c:\windows\fontsにショートカットや実ファイルがないのにフォント一覧に表示されるのも謎だし、

NexusFontは使いものになんねーし、

 

何も解決していない!(゚Д゚)

 

 

ひとまずc:\windows\fontsに残っている消せないフォントをなんとかしたい。

普通にdelコマンド打っても

 

アクセスが拒否されました

 

消せない。

使われているから消せない じゃなくてアクセス拒否。

どうしたものか・・・・。

 

moveで移動できたw

 

 

これでいったんは綺麗な状態になった。

また消えたときにどうなるか確認したいので、

追加フォントをショートカットでインストールして様子見することに。

 

 

 

カテゴリー: ソフトウェア, 技術的 タグ: , , , , , ,  [パーマリンク]

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です