2009-06-24 5 views

Antwort

3

Diese MSDN Seite hat folgendes zu sagen:

Diese Funktion installiert die Schrift nur für die aktuelle Sitzung. Wenn das System neu gestartet wird, ist die Schriftart nicht vorhanden. Damit die Schriftart auch nach dem Neustart des Systems installiert wird, muss die Schriftart in der Registrierung aufgeführt sein.

Ich glaube, der Schlüssel, den Sie brauchen, ist HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts

+0

ich blind yeasterday gewesen sein muss - weil ich für diesen Schlüssel gesucht und es nicht auf meinem Rechner finden konnte: Der Code kann in dem folgenden Pastebin Link. Jetzt sehe ich es deutlich. –

0

Ich habe in den letzten paar Tagen das gleiche Problem haben und jede Lösung, die ich verschiedene Probleme produzierte gefunden.

Ich schaffte es, mit meinem Kollegen einen Arbeitscode zu entwickeln, und ich dachte, ich würde ihn für alle teilen.

Installing a font programatically in C#

+0

Ich konnte Fonts komplett installieren, indem ich einfach in das Windows Font-Verzeichnis kopiere. Warum ruft Ihre Lösung auch AddFontResource auf und fügt sie manuell zur Registrierung hinzu? Durch das Kopieren in das Windows-Font-Verzeichnis habe ich festgestellt, dass ein Registry-Eintrag für mich erstellt wurde und die Datei (nach dem Neustart) auf MS Word (z. B.) zugreifbar ist. – gap

+0

Zurück, als ich dies in das Windows-Verzeichnis kopiert habe, hat es keinen Eintrag zur Registrierung hinzugefügt - daher ging es beim Neustart verloren. Vielleicht hat sich die Funktionalität im Laufe der Monate geändert oder ich habe etwas übersehen. Wie auch immer, danke für die Information. – kskyriacou