התקנת גופנים ב- Windows באמצעות GPO ו- PowerShell
במאמר זה, נראה כיצד להתקין גופנים נוספים במחשבים בתחום Active Directory באמצעות מדיניות קבוצתית וקובץ script של PowerShell. מדריך זה נבדק בגירסאות build נוכחיות של Windows 10 20H2 ו- Windows Server 2016/2019.
פריסת גופנים חדשים באמצעות GPO
אם ברצונך להתקין גופן חדש אחד או שניים, באפשרותך לעשות זאת באמצעות המדיניות הקבוצתית. כדי להתקין גופן, העתק קובץ *.ttf אל %WindowsDir%\Fonts\ במחשב לקוח והוסף את פרטי הגופן החדש למפתח הרישום HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts.
העתק את קובץ הגופן TTF לתיקיית רשת משותפת בשרת הקבצים שלך (אם יש לך רק כמה גופנים חדשים, באפשרותך לאחסן אותם בתיקיית SYSVOL בבקר התחום);
פתח את מסוף ניהול המדיניות הקבוצתית של התחום (
gpmc.msc), ליצור GPO_InstallFonts מדיניות חדשה ולקשר אותה ל-OU עם מחשבים;
לערוך את המדיניות;
יצירת כלל חדש בהעדפות מדיניות קבוצתית כדי להעתיק קובץ גופן מהתיקיה המשותפת אל
%WindowsDir%\Fonts\במכשירי הלקוח שלך. מוקדם יותר הראינו כיצד להעתיק קובץ למחשבים באמצעות GPO. צור מדיניות קבוצתית בהתאם להוראות אלה. עבור אל תצורת מחשב -> העדפות -> הגדרות Windows -> קבצים. צור ערך מדיניות עם הפרמטרים הבאים:מקור:
\\a-d.site\SYSVOL\a-d.site\scripts\Fonts\Roboto-Black.ttfיעד:
%WindowsDir%\Fonts\Roboto-Black.ttfעכשיו אתה צריך להוסיף את המידע על הגופן החדש שלך לרישום. כדי לבצע שינויים ברישום באמצעות GPO באפשרותך גם להשתמש ב- GPP (תצורת מחשב -העדפות > -> הגדרות Windows -> הרישום);
באפשרותך לציין את פרטי הגופן ברישום באופן ידני. עם זאת, קל יותר להתקין גופן באופן ידני במחשב עיון ולייצא את הגדרות הרישום של הגופנים באמצעות אשף (תצורת מחשב -> העדפות -> הגדרות Windows -> הרישום -> חדש -> אשף הרישום);
-
השתמש בדפדפן הרישום כדי לעבור אל מפתח reg HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts במחשב מרוחק. חפש ובחר את פריט הרישום המכיל את שם הגופן שברצונך להתקין;
פרמטר הרישום יופיע בעורך GPO.
לאחר מכן עדכן את הגדרות GPO במחשב הלקוח וודא שקובץ הגופן החדש הותקן. ב- Windows 10, באפשרותך להציג את רשימת הגופנים המותקנים בהגדרות -> התאמה אישית -> גופנים.
אם קובץ הגופן לא הותקן, ודא שהמדיניות מוקצית למחשב באמצעות הכלי gpresult. לאחר מכן בצע את הדרך הרגילה לפתרון בעיות בהחלת הגדרות GPO על מחשבים.
התקנת גופני Windows באמצעות PowerShell Logon Script
כדאי להשתמש בשיטת התקנת הגופנים באמצעות GPO המתוארת לעיל אם ברצונך להתקין גופנים מסוימים בלבד. אם ברצונך להתקין הרבה קבצי גופנים חדשים בבת אחת, עדיף להשתמש בסקריפט PowerShell, שכן זה עשוי להיות מעייף ליצור אפשרויות מדיניות מיוחדות עבור כל גופן.
קובץ ה-script הבא של PowerShell יתקין את כל קבצי הגופן *.ttf ו- *.otf הממוקמים בתיקיה המשותפת שצוינה. כמו כן, הסקריפט כותב את כל הפעולות לקובץ יומן הרישום באמצעות הפונקציה WriteLog.
function WriteLog
{
Param ([string]$LogString)
$Stamp = (Get-Date).toString("yyyy/MM/dd HH:mm:ss")
$LogMessage = "$Stamp $LogString"
Add-content $LogFile -value $LogMessage
}
$Logfile = "C:\Windows\posh_font_install.log"
$SourceFolder = "\\a-d.site\SYSVOL\a-d.site\scripts\Fonts"
Add-Type -AssemblyName System.Drawing
$WindowsFonts = [System.Drawing.Text.PrivateFontCollection]::new()
Get-ChildItem -Path $SourceFolder -Include *.ttf, *.otf -Recurse -File |
Copy-Item -Destination "$env:SystemRoot\Fonts" -Force -Confirm:$false -PassThru |
ForEach-Object {
WriteLog "Installing font file $_.name"
$WindowsFonts.AddFontFile($_.fullname)
$RegistryValue = @{
Path = 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts'
Name = $WindowsFonts.Families[-1].Name
Value = $_.Fullname
}
$RemoveRegistry = "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts"
Remove-ItemProperty -name $($WindowsFonts.Families[-1].Name) -path $RemoveRegistry
New-ItemProperty @RegistryValue
}
שמרו את סקריפט PowerShell כקובץ PS1 והפעילו אותו כסקריפט כניסה באמצעות GPO.
לפיכך, כל קבצי הגופנים מהתיקייה שצוינה יותקנו ב- Windows, ותאריך ושעת ההתקנה יירשמו.
אם עליך להסיר את כל הגופנים הנוספים ב- Windows ולשחזר את הגופנים המוגדרים כברירת מחדל, בצע מדריך זה.








