12

カスタム フォントの TTF ファイルで満たされたフォルダーがあります。PowerShell スクリプトを使用してシステム フォントとしてそれらをインストールする必要があります (これは Windows Server 2008 R2 上にあります)。powershellでそれを行う方法を知っている人はいますか? ありがとう!

4

4 に答える 4

19

それは非常に簡単です。以下のスニペットを見てください。

$FONTS = 0x14
$objShell = New-Object -ComObject Shell.Application
$objFolder = $objShell.Namespace($FONTS)
$objFolder.CopyHere("C:\test\Myfont.ttf")

また、再起動/ログオフする必要はありません...

0x14 値は、特別なフォルダーの CLSID です。

さらに、上記の各ステップを説明するこのチュートリアルを見つけました。

http://windowsitpro.com/scripting/trick-installing-fonts-vbscript-or-powershell-script

于 2013-04-15T19:28:52.837 に答える
2

COM オブジェクトの使用はShell.ApplicationServer Core では機能しません (少なくとも 2012 R2 では機能しません)。

フォント ファイルをC:\Windows\Fonts(この場合は times.ttf) にコピーし、対応するレジストリ エントリを PowerShell で追加するだけで成功しました。

New-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts' -Name 'Times New Roman (TrueType)' -PropertyType String -Value times.ttf

取り外しは取り付けの逆です。唯一の欠点は、フォントをインストールした後と、アプリケーションがフォントを参照している場合はアンインストールする前の両方で、再起動が必要になることです。

于 2016-04-07T21:32:44.357 に答える