マシンにフォントがインストールされていないかどうかを確認する必要があります。インストールされていない場合は、プログラムがユーザー インターフェイスなしでフォントをインストールできるようにする必要があります。
これをどのように達成できるか知っている人はいますか?
最初にフォントをフォントディレクトリにコピーする必要があることはわかっていますが、有効にするにはマシンを再起動する必要があり、これは望ましくありません。
助けてくれてありがとう。
ここを見てください。
そして多分これを試してください:
[DllImport("gdi32", EntryPoint = "AddFontResource")]
public static extern int AddFontResourceA(string lpFileName);
これをどのように達成できるか知っている人はいますか?
はい。そうではない。フォントをインストールするのはあなたの仕事ではありません - おそらく管理者はあなたに地獄に行くように言うでしょう (あなたのプログラム/ユーザーにはそうする権利がありません)。私は確認しなければなりませんが、私は静かにポジティブに考えています。通常のユーザーは、フォント ディレクトリにフォントをコピーすることはできません。
これはインストーラーが行うことです。サイレント モードでインストーラーを起動することはできますが、再度権利の問題が発生するため、ユーザーが - ああ - ;) まあ - 通常のユーザーでない限り、実際には機能しません。
マシンを再起動する必要がありますが、これは望ましくありません。
誰もあなたが何を望んでいるのか気にしません。MS はインストールのガイドラインを設定しており、それに従う必要があります。私もそこに行ったことがあります-あなたがしたトリックは戻ってきてあなたを噛みます. ここでの謙虚さのルール - ルールに従ってください。
たとえば構成/ユーザーデータをフォルダーに書き込む-ああ-問題を抱えている人々によって書かれたソフトウェアがまだ多すぎます(現在は書き込み保護されており、過去10年間そのように文書化されていました)。