![]() |
Dateiname eines Fonts ermitteln
Hallo!
Ich würde gerne den Dateinamen eines Fonts ermitteln. Kennt jemand eine Funktion dafür oder weiss wie man es probieren könnte? Problem ist nämlich, dass bei vielen Fonts der Dateiname <> Fontname ist. z.B.: Fontname: "ZoeBecker" Dateiname: "zoerdb.ttf" Vielen Dank im Vorraus! MfG Florian :hi: |
Re: Dateiname eines Fonts ermitteln
Hinzu kommt noch, das bestimmte Fonts "gemappt" sind, das heisst "MS Shell Dlg 2" ist z.B. Tahoma.
Nachzulesen in der Registry unter HKLM\Microsoft\Windows NT\CurrentVersion\FontSubstitutes. Namen kann man unter "HKLM\Microsoft\Windows NT\CurrentVersion\Fonts" rausfinden. Das ganze gilt für Windows NT4/2000/XP/2003. Ob es eine Funktion dafür gibt, weis ich allerdings nicht. |
Re: Dateiname eines Fonts ermitteln
Und genau da liegt das Problem!
Nur mit genügend Rechten kann man auf HKLM zugreifen... Weiterhin sollte das wenn möglich zumindest auch auf Win98 laufen... MfG Florian :hi: |
Re: Dateiname eines Fonts ermitteln
Lesen solltest du auch als einfacher Benutzer können. Und schlimmsten falls musst du eben zwei Versionen machen.
|
Re: Dateiname eines Fonts ermitteln
Hi Florian,
du musst beim Erstellen des TRegistry-Objekts angeben, dass du nur Lesezugriff willst:
Delphi-Quellcode:
Lässt du den Parameter weg, so wird automatisch Lese- und Schreibzugriff verlangt, welchen du auf HKLM aber nur als Admin erhälst.
reg := TRegistry.Create(KEY_READ);
Greetz alcaeus |
Re: Dateiname eines Fonts ermitteln
Seid ihr euch sicher, dass der Pfad unter NT und Win9x der Gleiche ist?
Wenn ja, dann wäre das wohl ne Möglichkeit... MfG Florian :hi: |
Re: Dateiname eines Fonts ermitteln
Habe grad unter Win95 geguckt, da gibt es das nur unter HKLM\Microsoft\Windows\CurrentVersion\Fonts, die FontSubstitutes scheint es gar nicht zu geben.
|
Re: Dateiname eines Fonts ermitteln
Hallo Florian!
Zitat:
Auf meinen Rechnern stehen die Fonts bei Win98, Win98SE unter Zitat:
Zitat:
Zitat:
Fazit: Die Fonts selber stehen bei MS-DOS Version 7 mit Windows Version 4 (aka Win95, Win98, WinME) in einem geringfügig anderen Registryzweig als bei Windows (aka WinNT, Win2000, WinXP). Substitutes gibt es nur bei NT. Da es nur 2 mögliche Schlüssel für Fonts sind, kann man ja beide auswerten. Für Substitutes würde ich auch beide theoretisch möglichen Schlüssel suchen. Gruß Dietmar Brüggendiek Edit: Teitscha Sprak -schwäres Sprak |
Re: Dateiname eines Fonts ermitteln
Ja, natürlich sind die alle unter HKLM\SOFTWARE, weis auch nich warum mir dreimal der geleich Tippfehler passiert ist, wahsrcheinlich durch Copy&Paste.
Die "Windows NT"- und die FontSubstitutes-Einträge gibt es aber unter Win95 garantiert nicht, erst ab Win98. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:30 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz