iT邦幫忙

0

利用AD裡的 GPO 來讓所有使用者皆可自動下載字型的問題

  • 分享至 

  • xImage

公司有個需求,希望每個使用者登入電腦後,自動下載好ERP需要的某個字型 如下https://ithelp.ithome.com.tw/upload/images/20220802/20149954HezEbGf278.jpg

有發現字型下載好後,都會到 C:\Windows\Fonts 裡面,有試過把它刪掉,直接用手動移動檔案進去的方式,是可以成功下載進去

但如果是寫一個 bat 檔,利用xcopy 指令方式:

if not exist "%systemroot%\fonts\FRE3OF9X.TTF" (xcopy C:\FRE3OF9X.TTF %systemroot%\fonts)

它雖然寫複製成功,但似乎沒有真的傳進去,C:\Windows\Fonts 會找不到檔案,裡面的檔案如果成功應該會是長這樣 如下
https://ithelp.ithome.com.tw/upload/images/20220802/20149954SLUmbTAQkh.jpg

但如果我使用 這串指令是找得到它的:
if exist "%systemroot%\fonts\FRE3OF9X.TTF" (%systemroot%\fonts\FRE3OF9X.TTF)

它會跳出最上面那張圖,代表我查詢的這個檔案確實在這個資料夾裡,可是不知道為什麼,使用bat檔 的 xcopy 方式會看不到它

我還有發現一個可能性,對這個檔案點右鍵,它的選項中是有安裝的,如下
https://ithelp.ithome.com.tw/upload/images/20220802/20149954mBz8LbQsHA.jpg

不知道bat 指令怎麼寫可以讓它自動執行這個"安裝"選項

後來還有想利用 C# 或者 python,但打開這個檔案後,鍵盤可以輸入 "I" 讓它自動下載,但是敲指令方式,好像無法傳遞 輸入"I"這個指令 到這個檔案裡,頂多都是打在程式背景上

還請網路上的指令高手 指導指導

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

1
akitect
iT邦新手 5 級 ‧ 2022-08-03 00:08:30

除了複製以外,還需要註冊字體

batch file:

copy "FRE3OF9X.TTF" "%WINDIR%\Fonts"
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts" /v "FRE3OF9X (TrueType)" /t REG_SZ /d FRE3OF9X.ttf /f
看更多先前的回應...收起先前的回應...
s82910g iT邦新手 5 級 ‧ 2022-08-05 20:52:16 檢舉

結果這種方式不行,是不是還有哪個註冊檔被遺漏?

akitect iT邦新手 5 級 ‧ 2022-08-06 12:28:02 檢舉

我漏了點東西,剛編輯了一下,你再試試

s82910g iT邦新手 5 級 ‧ 2022-08-06 16:41:03 檢舉

我測試後 WIN10 電腦可以
但WIN7 電腦不行

WIN10 電腦註冊檔輸入完 它會自動在fonts 資料夾跳出 Free 3 OF 9 延伸 這個字型

但WIN7 不會跳

順便想詢問 你編輯是多加了最後面的 /F 嗎?
他有什麼功用

akitect iT邦新手 5 級 ‧ 2022-08-07 02:30:07 檢舉

編輯前 "FRE3OF9X (TrueType)" 錯植為 "FRE3OF9X.ttf"

不清楚 windows 7 不成功的原因,提供一些參考步驟,可以檢查一下或手動新增/刪除機碼測試看看
[1][2] [3]

關於 reg add 命令部份,/f 旨在略過機碼新增的確認,其他參數可以看 Microsoft Docs

s82910g iT邦新手 5 級 ‧ 2022-08-07 13:15:36 檢舉

那我再研究WIN7的看看
對了順便問你,批次檔怎麼樣可以讓它自動使用最高權限執行
因為要搬運 .TTF檔案 不是最高權限 不給我搬
我目前寫出來的批次檔,都要自己右鍵以系統管理員執行

我要發表回答

立即登入回答