Computechsoft Ответов: 1

Скопируйте файл шрифта в папку шрифтов


Я хочу скопировать файл шрифта (FontFile.ttf) в этой папке "C:\Windows\Fonts"

Что я уже пробовал:

Dim FontFile As String = "C:\Font.ttf"
filecopy ("FontFile.ttf","c:\winsows\fonts\FontFile.ttf")

Maciej Los

И в чем же ваша проблема?

Computechsoft

Копирование файла шрифта в папку шрифтов windows "C:\Windows\Fonts"

Dave Kreskowiak

Учитывая, что в коде, который вы опубликовали, путь к Windows неверен...

Кроме того, вы никогда не описывали, с какой проблемой столкнулись, если только не хотите сказать, что понятия не имеете, как скопировать файл в файл .NET.

1 Ответов

Рейтинг:
5

Maciej Los

Пожалуйста, обратитесь к этому:
Как создать копию файла в другом каталоге в Visual Basic | Microsoft Docs[^]
Файл.Метод Копирования (System.IO) | Microsoft Docs[^]

Примечание: Вы должны использовать Попробуй...Поймать...Наконец заявление[^] для обработки исключений.

Dim FontFile As String = "C:\Font.ttf"
Dim dstPath As String = "C:\Windows\Fonts\"
Try
    File.Copy(FontFile,Path.Combine(destPath, Path.GetFileName(FontFile)))
Catch ex As Exception
    MessageBox(ex.Message)
End Try


Для получения более подробной информации, пожалуйста, смотрите:
Путь.Комбинированный Метод (Система.IO) | Microsoft Docs[^]
Метод Path.GetFileName (System.IO) | Microsoft Docs[^]


Computechsoft

Спасибо Мацей Лос эта помощь полная

Richard Deeming

Вы должны избегать жесткого кодирования пути к папке шрифтов, так как это может измениться.

Dim dstPath As String = Environment.GetFolderPath(Environment.SpecialFolder.Fonts)

Кроме того, помните, что ваше приложение должно работать с повышенными разрешениями, чтобы иметь возможность писать в папку шрифтов.

Maciej Los

Хорошая мысль, Ричард!

Computechsoft

но проблема в том, что шрифт не копируется в папке шрифтов Windows

Maciej Los

Пожалуйста, прочтите комментарий Ричарда.