Поделиться через


Использование библиотек DLL ресурсов в мини-driver

Как правило, драйверы принтеров требуют использования таких ресурсов, как внешне хранимые шрифты, значки и другие растровые изображения, а также локализуемые текстовые строки пользовательского интерфейса. Описания этих элементов помещаются в библиотеку DLL ресурсов, как описано в документации по Microsoft Windows SDK.

Чтобы использовать библиотеки DLL ресурсов в мини-хранилище Unidrv, необходимо определить ресурсы следующим образом:

  • Если вы используете несколько библиотек DLL ресурсов, определите их с помощью функции RESDLL.

    Ниже приведен пример использования функции RESDLL.

    *Feature: RESDLL
    {
        *Option: FirstRes
        {*Name: "MyFirstRes.dll"}
        *Option: SecondRes
        {*Name: "MySecondRes.dll"}
        *Option: ThirdRes
        {*Name: "MyThirdRes.dll"}
    }
    

    Для ссылки на ресурсы, содержащиеся в одном из этих библиотек DLL ресурсов, используйте следующий формат:

    RESDLL. ResourceOptionName. ResourceID

  • Если вы используете только одну библиотеку DLL ресурса, ее можно определить, назначив значение атрибуту *ResourceDLL.

    Чтобы ссылаться на ресурс, содержащийся в этой библиотеке DLL ресурса, укажите соответствующий идентификатор ресурса, как показано в следующем примере:

    *rcNameID: 288
    

Все библиотеки DLL ресурсов, используемые с мини-хранилищем, должны быть указаны в INF-файле принтера. См. статью Установка мини-драйвера Unidrv.

В файле GPD идентификаторы ресурсов должны использоваться при назначении значений любой записи, имя которой начинается с *rc, например *rcIconID и *rcCartridgeNameID.

Кроме того, если принтер содержит шрифты, резидентные оборудованием, необходимо указать описания шрифтов принтера для этих шрифтов в виде файлов UFM или IFI, а также определить эти файлы в библиотеке DLL ресурса с помощью типа ресурса RC_UFM или RC_FONT типа ресурса соответственно.

Корпорация Майкрософт предоставляет библиотеку DLL ресурса unires.dll, которая содержит строковые ресурсы для стандартных функций и стандартных параметров. Предоставленный Корпорацией Майкрософт GPD-файл stdnames.gpd присваивает каждому идентификатору ресурса имя символа макроса. Это позволяет ссылаться на эти ресурсы по имени макроса, как показано в следующем примере:

*rcNameID: =LETTERSMALL_DISPLAY