Rubrik: Fonts | 09.05.01 |
RemoveFontResource-Funktion Die AddFontResource-Funktion entfernt ein Font aus der Font Tabelle. | ||
Betriebssystem: Win95, Win98, WinNT, Win2000, WinME | Views: 13.493 |
Beschreibung:
Die AddFontResource-Funktion entfernt ein Font aus der Font Tabelle. Nach Erfolgreichem Ausführen dieser Funktion kann kein Programm die entfernte Font mehr benutzen. Wurde die Font mit AddFontResourceEx hinzugefügt, müssen Sie es mit RemoveFontResourceEx aus der Font Tablle entfernen.
Hinweis
Programme die bereits laufen, wenn diese Funktion ausgeführt wird, müssen über die Aktualisierung der Font Tabelle benachrichtet werden. Dies geschieht über die SendMessage-Funktion, der man die Parameter "WM_FONTCHANGE" und "HWND_BROADCAST" übergeben muß. Somit wird jedes Fenster über das Entfernen der Font benachrichtet.
Deklaration:
Declare Function RemoveFontResource Lib "gdi32.dll" _ Alias "RemoveFontResourceA" ( _ Byval lpFileName As String) As Long
Parameter:
lpFileName | Der Dateiname der Font. Mögliche Dateiendungen sind "*.fon, *.fnt, *.ttf, *.fot, *.otf, *.mmm, *.pfb, *.pfm". Bei ostasiatischen Windows 9x-Versionen und bei Windows NT 3.1 oder höher zusätzlich noch "*.ttc". Bei Windows 2000 ist es möglich mehrere Dateinamen zu übergeben. Diese müssen dann durch das Pipe-Zeichen "|" getrennt werden. |
Rückgabewert:
War der Funktionsaufruf erfolgreich, liefert die Funktion einen Wert ungleich "0" zurück, andernfalls erhält man "0" als Rückgabewert.
Beispiel:
Private Declare Function RemoveFontResource Lib "gdi32.dll" _ Alias "RemoveFontResourceA" ( _ Byval lpFileName As String) As Long ' Zwecks des Beispieles wird diese Funktion benötigt Private Declare Function AddFontResource Lib "gdi32.dll" _ Alias "AddFontResourceA" ( _ Byval lpFileName As String) As Long
Private Sub Command1_Click () Dim Retval As Long Retval = AddFontResource(App.Path & "\lcd.ttf") If Retval = 0 Then MsgBox "Das Hinzufügen der Font ist gescheitert", vbCritical , "Fehler" Else MsgBox "Sie haben " & Retval & " Font(s) erfolgreich hinzugefügt." & vbCrLf & _ "Die Hinzugefügten Fonts werden jetzt wieder entfernt.", vbInformation, _ "Font(s) hinzugefügt" End If ' Hier beginnt der eigentlich Teil Retval = RemoveFontResource(App.Path & "\lcd.ttf") If Retval = 0 Then MsgBox "Das Entfernen der Font ist gescheitert", vbCritical , "Fehler" Else MsgBox "Sie haben die Font erfolgreich entfernt.", vbInformation , "Font entfernt" End If End Sub