Шрифт не устанавливается с помощью WinAPI - PullRequest
0 голосов
/ 14 февраля 2019

Я пытаюсь установить шрифт TTF навсегда в Windows, используя winapi, но когда я помещаю его в C: / Windows / Fonts, он не работает.

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

if (!PathFileExistsA("C:/windows/fonts/Raleway-Regular.ttf")) {
    auto hdl = CreateFileA("C:/windows/fonts/Raleway-Regular.ttf", GENERIC_WRITE, NULL, NULL, CREATE_ALWAYS, NULL, NULL);

    DWORD written;
    WriteFile(hdl, font, 178520, &written, NULL);

    if (written < 178520) {
        MessageBoxA(NULL, "Could not install required fonts [error 1]", "Error", MB_OK | MB_APPLMODAL);
        CloseHandle(hdl);
        std::terminate();
    }

    CloseHandle(hdl);
    AddFontResourceA("C:/windows/fonts/Raleway-Regular.ttf");
}

Я проверил MSDN, и я думаю, что именно так я устанавливаю шрифты.Тем не менее, это не сработает.

UPD: я добавил проверку ошибок для каждой функции, но все они успешно

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...