Seite 1 von 2
Fontinstallation
Verfasst: 29 Sep 2010, 08:46
von Reddy
Hallo,
ich suche einen Weg über opsi in Windows 7 Fonts zu installieren.
Mit WinXP geht es problemlos indem ich die Fonts in C:\windows\fonts kopiere.
Aber mit Win7 funktioniert dieser Weg nicht.
Das kopieren klappt laut Log-Eintrag zwar, aber die Fonts werden nicht angezeigt.
Hat jemand eine Lösung?
Re: Fontinstallation
Verfasst: 29 Sep 2010, 12:51
von karni
Hallo,
ich kopiere Fonts unter WindowsXP auch, aber ich muss Sie "registrieren" so zu sagen, damit sie sichtbar sind.
So sieht es aus:
[Registry_edit]
openkey [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts]
set "Eurostile (TrueType)"="Eurostile.ttf"
set "Eurostile Bold (TrueType)"="Eurostile Bold.ttf"
set "Eurostile-Black-DTC (TrueType)"="Eurostile-Black-DTC.ttf"
set "EurostileExtended-Roman-DTC (TrueType)"="EurostileExtended-Roman-DTC.ttf"
Vielleicht musst du für Windows7 auch "sagen", dass die Fonts existieren....
Re: Fontinstallation
Verfasst: 02 Dez 2010, 15:42
von it-service
hi,
ich habe das letztens erst gebaut.
Es gibt ein Microsoft Tool dafür. Nennt sich fontinst.exe. Findest du auf der Microsoft HP aber nicht zum Download. Aber wenn du mal googlest kommst du da hin. Hab den Link leider nicht mehr aber man ist ja mit seinen Problemen nie allein

Jedenfalls musst du einen Ordner erstellen in dem alle Schriftarten die du installieren möchtest enthalten sind. Dazu erstellst du im selben Verzeichnis eine font.inf Datei mit folgendem Aubau:
[fonts]
schriftart1.ttf
schriftart2.ttf
usw.
die fontinst.exe legst du auch mit in das Verzeichnis. Im Inst-Skript des Opsi-Pakets dann einfach mit dem Winbatch-Aufruf fontinst.exe /f font.inf die Schriftarten installieren lassen.

gibt auch noch andere Möglichkeiten mit AutoIT-Skripten oder nLite. ist aber aufwendiger finde ich.
um die dateinamen der Schriftarten in die INF-Datei zu Schreiben einfach über cmd den Befehl "dir /b > font.inf" verwenden.
mfg
Re: Fontinstallation
Verfasst: 02 Dez 2010, 15:51
von it-service
bitteschön

Re: Fontinstallation
Verfasst: 02 Dez 2010, 16:05
von wolfbardo
Bitte keine
Dateien im Forum hochladen.
Danke und Gruss
Bardo Wolf
Re: Fontinstallation
Verfasst: 02 Dez 2010, 18:06
von Groo
Bei mir (win7 64bit) funktionierts wie's Karni beschrieben hat.
Re: Fontinstallation
Verfasst: 02 Dez 2010, 18:09
von it-service
bei 100 SChriften beispielsweise hat man da aber ganz schön schreibarbeit

Re: Fontinstallation
Verfasst: 18 Okt 2012, 08:51
von stitzedv
Habe einen Link bei Microsoft gefunden:
Fontinst.exe
Lässt sich aber nicht unter 64-Bit ausführen (16-Bit Anwendung)
Re: Fontinstallation
Verfasst: 23 Okt 2012, 12:02
von lars_k
Hallo ,
wir benutzen dafür ein Autoitscript ( aus dem Forum )
Dieses nimmt alle Fonts aus dem Verzeichnis "depot".
Code: Alles auswählen
Aufruf : InstallFont(@ScriptDir&"\depot\*.*") ; Pfadangabe
Func InstallFont($sSourceFile, $sFontDescript="", $sFontsPath="")
Local Const $HWND_BROADCAST = 0xFFFF
Local Const $WM_FONTCHANGE = 0x1D
If $sFontsPath = "" Then $sFontsPath = @WindowsDir & "\fonts"
Local $sFontName = StringRegExpReplace($sSourceFile, "^.*\\", "")
If Not FileCopy($sSourceFile, $sFontsPath & "\" & $sFontName, 1) Then Return SetError(1, 0, 0)
Local $hSearch = FileFindFirstFile($sSourceFile)
Local $iFontIsWildcard = StringRegExp($sFontName, "\*|\?")
Local $aRet, $hGdi32_DllOpen = DllOpen("gdi32.dll")
If $hSearch = -1 Then Return SetError(2, 0, 0)
If $hGdi32_DllOpen = -1 Then Return SetError(3, 0, 0)
While 1
$sFontName = FileFindNextFile($hSearch)
If @error Then ExitLoop
If $iFontIsWildcard Then $sFontDescript = StringRegExpReplace($sFontName, "\.[^\.]*$", "")
$aRet = DllCall($hGdi32_DllOpen, "Int", "AddFontResource", "str", $sFontsPath & "\" & $sFontName)
If IsArray($aRet) And $aRet[0] > 0 Then
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts", _
$sFontDescript, "REG_SZ", $sFontsPath & "\" & $sFontName)
EndIf
WEnd
DllClose($hGdi32_DllOpen)
DllCall("user32.dll", "Int", "SendMessage", "hwnd", $HWND_BROADCAST, "int", $WM_FONTCHANGE, "int", 0, "int", 0)
Return 1
EndFunc
Gruß
Lars
Re: Fontinstallation
Verfasst: 20 Mär 2014, 16:23
von D1Ck3n
Hallo,
das Thema ist zwar schon alt, aber mein Problem ist recht aktuell:
Ich will einfach nur eine neue Schriftart überall auf unsere Win 7 Maschienen verteilen, aber irgendwie klappt das nicht
Mein Skript:
Code: Alles auswählen
[Initial]
Message= Schriftarten werden installiert...
SetLogLevel=6
ExitOnError=true
ScriptErrorMessages=true
TraceMode=off
[Aktionen]
Files_copy
Registry_edit
[Files_copy]
copy -s "%SCRIPTPATH%\*.ttf" "C:\Windows\Fonts\."
[Registry_edit]
openkey [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts]
set "DINOffcPro (TrueType)"="DINOffcPro.ttf"
set "DINOffcPro-Bold (TrueType)"="DINOffcPro-Bold.ttf"
set "DINOffcPro-BoldIta (TrueType)"="DINOffcPro-BoldIta.ttf"
set "DINOffcPro-Ita (TrueType)"="DINOffcPro-Ita.ttf"
set "DINOffcPro-Light (TrueType)"="DINOffcPro-Light.ttf"
Dieses Skript müsste doch richtig sein Oo
Gruß
D1Ck3n