Не удаётся найти указанный файл при установке шрифта C#
Пытаюсь установить шрифт с помощью кода из статьи:
[DllImport("gdi32.dll", EntryPoint = "AddFontResourceW", SetLastError = true)]
public static extern int AddFontResource([In][MarshalAs(UnmanagedType.LPWStr)]
string lpFileName);
...
int result = -1;
int error = 0;
result = AddFontResource(@"E:\Font\Puzzled_2.ttf");
error = Marshal.GetLastWin32Error();
if (error != 0)
{
MessageBox.Show(new Win32Exception(error).Message);
}
else
{
if (result == 0)
{
MessageBox.Show("Font is already installed.");
}
else
{
MessageBox.Show("Font installed successfully.");
}
}
И получаю ошибку "Не удаётся найти указанный файл". Это при том, что данный код работал, пробовала устанавливать как новые шрифты, так и уже установленные и ошибок не было.
После чего начала внедрять его в основную программу, тогда и возникла эта ошибка. Вернула всё к исходному, самому простому варианту, но он уже не работает.
Файл существует, пробовала и рядом с исполняемым файлом ставить шрифт, и через Directory.GetCurrentDirectory(), и в отдельной директории - всегда один результат. Программа запускается с правами администратора, не знаю из-за чего ещё может возникнуть такая ошибка.