陌宇凌锋 发表于 2018-3-12 20:09:50

本帖最后由 陌宇凌锋 于 2018-3-12 20:10 编辑

一直不知道有这种软件,每次都是一个一个自己看到底有哪些字体,感谢楼主{:8_706:}

陌宇凌锋 发表于 2018-3-12 20:10:23

卡了,发了两遍,编辑了

lee850220 发表于 2018-3-17 17:38:36

本帖最后由 lee850220 于 2018-3-17 17:55 编辑

請問這個程式會因為安裝過多字型導致程式崩潰嗎,
目前Fonts內有2000多個字體,
每次開啟後顯示完第一次,再安裝一個新的字幕重新讓他列出字幕的時候就崩潰了。

程式開啟運行第一次都會出現記憶體不足,然後重新再點一次就會正常顯示,猜測可能是有個wait()時限到了還來不及讀取完整個資料夾導致第一次都會失敗?

然後我發現好像每次開啟都會重新讀取整個字體資料夾,因為只要打開程式就會有大約2GB的讀取量自Fonts資料夾,跟大約800MB的寫入量寫到FontCache的資料夾。初步研究這個讀寫動作跟WPF的Windows Font Cache Service有關。

我只是把可能發生問題的地方列出來供參考~麻煩你了

tonyhsie 发表于 2018-3-17 19:34:29

本帖最后由 tonyhsie 于 2018-3-18 02:09 编辑

lee850220 发表于 2018-3-17 17:38
請問這個程式會因為安裝過多字型導致程式崩潰嗎,
目前Fonts內有2000多個字體,
每次開啟後顯示完第一次, ...
Windows 7 會有這種現象,Windows 10 似乎不會,這問題我也沒有好的解決方法
這屬於 .Net Framework 在 Win7 環境的問題


有些字型資訊無法直接透過 WPF 取得

必須開啟字型檔案來確認,所以每次開啟程式後,第一次執行任一功能時,都會開啟字型檔案



lee850220 发表于 2018-3-21 00:01:44

本帖最后由 lee850220 于 2018-3-21 00:27 编辑

請問這個程式會因為安裝過多字型導致程式崩潰嗎,
目前Fonts內有2000多個字體,
每次開啟後顯示完第一次,再安裝一個新的字幕重新讓他列出字幕的時候就崩潰了。 ...

忘記附註操作環境:

Windows 10 1709 build 16299.309 企業版 x64


2018/03/21
我把FontCache的路徑改到非系統碟後,讀寫問題已經解決,目前只剩下runtime error(只有剛運行第一次會出現),記憶體的問題也解決了,重複Run也不會崩潰了。

完整錯誤訊息詳見附檔。

tonyhsie 发表于 2018-3-21 00:53:13

lee850220 发表于 2018-3-21 00:01
忘記附註操作環境:

Windows 10 1709 build 16299.309 企業版 x64


初步看來是你系統安裝的字型檔案中,有些路徑有不合法字元

你可以用 RegEdit 去看 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts 這裡面各項的路徑
看是哪一個有問題




或者是在 ListAssFonts 裡按 F12


5. 按F12/Menu鍵可導出 debug 用的純文字文件,方便報錯/除錯

把 debug 文件發上來

lee850220 发表于 2018-3-22 13:54:57

tonyhsie 发表于 2018-3-21 00:53
初步看來是你系統安裝的字型檔案中,有些路徑有不合法字元

你可以用 RegEdit 去看 HKEY_LOCAL_MACHINE\S ...

從註冊表裡面發現有許多字體的名字是亂碼,都是文鼎系列的,修正之後已經沒有問題,雖然跑列表的時候會短暫出現記憶體不足,但是讀取完畢就會自動刷新恢復正常,基本上不影響使用!
感謝解答

tonyhsie 发表于 2018-3-22 17:36:48

lee850220 发表于 2018-3-22 13:54
從註冊表裡面發現有許多字體的名字是亂碼,都是文鼎系列的,修正之後已經沒有問題,雖然跑列表的時候會短 ...

針對這個問題作了一個小改版


v180322

1. 為避免程式在掃描系統已字裝字型時中斷,跳過那些含有不合格字元的字型 Reg key (HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts)

lee850220 发表于 2018-3-23 15:00:47

本帖最后由 lee850220 于 2018-3-23 15:03 编辑

我又帶問題來了~

圖中紅框應該是同一個字體吧?
可是居然被安裝了兩次,分別被不同的名稱記錄在註冊表內。
-----------------------我是分隔線-----------------------
還有一些字體明明已經安裝過了,可是重複安裝並不會提示,反而重複安裝然後多了很多重複的檔案在Fonts裡面

這兩個問題要怎麼解決?


tonyhsie 发表于 2018-3-23 15:53:16

lee850220 发表于 2018-3-23 15:00
我又帶問題來了~

圖中紅框應該是同一個字體吧?


如果你是用 Windows 內建的安裝字型功能,當你安裝同一套字型時,應該都會提示

惹是用第三方軟體裝的字型,可能就沒提示了,才會裝到一堆重複


我建議安裝或反安裝,都盡量用 Windows 內建功能,比較不會有這些問題


解決也只能手動一個個處理了,我也不曉得有沒有其它更快的方法

{:4_677:}
页: 1 2 3 4 5 6 7 8 [9] 10 11 12 13 14 15 16 17 18
查看完整版本: ListAssFonts: 小工具,分析字幕使用的字型 (暫停更新及下載)