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


Макрос MAKEDLLVERULL (shlwapi.h)

Используется для упаковки сведений о версии DLL в значение ULONGLONG.

Синтаксис

void MAKEDLLVERULL(
   major,
   minor,
   build,
   qfe
);

Параметры

major

Основной номер версии.

minor

Дополнительный номер версии.

build

Номер построения.

qfe

Номер исправления, идентифицирующий пакет обновления.

Возвращаемое значение

None

Remarks

Этот макрос используется вместе с DllGetVersion для упаковки сведений о версии в форму, которую можно легко сравнить с элементом ullVersionструктуры DLLVERSIONINFO2 . Он определяется следующим образом.

#define MAKEDLLVERULL(major, minor, build, sp) \
        (((ULONGLONG)(major) << 48) | \
         ((ULONGLONG)(minor) << 32) | \
         ((ULONGLONG)(build) << 16) | \
         ((ULONGLONG)(   sp) <<  0))

В большинстве случаев необходимо назначить значения только основным и дополнительным номерам версий. Для оставшихся двух параметров можно задать нулевое значение. В следующем фрагменте кода показано, как с помощью MAKEDLLVERULL определить, является ли библиотека DLL версии 4.71 или более поздней. Структура VersionInfo — это структура DLLVERSIONINFO2 , возвращаемая DllGetVersion.

if(VersionInfo.ullVersion >= MAKEDLLVERULL(4, 71, 0, 0))
{
    ...
}

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional, Windows XP [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header shlwapi.h