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


функция CM_Get_Device_Interface_AliasW (cfgmgr32.h)

Функция CM_Get_Device_Interface_Alias возвращает псевдоним указанного экземпляра интерфейса устройства, если псевдоним существует.

Синтаксис

CMAPI CONFIGRET CM_Get_Device_Interface_AliasW(
  [in]      LPCWSTR pszDeviceInterface,
  [in]      LPGUID  AliasInterfaceGuid,
  [out]     LPWSTR  pszAliasDeviceInterface,
  [in, out] PULONG  pulLength,
  [in]      ULONG   ulFlags
);

Параметры

[in] pszDeviceInterface

Указатель на имя экземпляра интерфейса устройства, для которого требуется получить псевдоним. Вызывающий объект обычно получает эту строку из вызова CM_Get_Device_Interface_List или в структуре уведомлений PnP.

[in] AliasInterfaceGuid

Указатель на GUID, указывающий класс интерфейса извлекаемого псевдонима.

[out] pszAliasDeviceInterface

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

Требуется буфер. В противном случае вызов завершится ошибкой.

[in, out] pulLength

Предоставляет количество символов в pszAliasDeviceInterface и получает количество символов, необходимое для хранения интерфейса псевдонима устройства.

Для входных данных этот параметр должен быть больше 0.

[in] ulFlags

Зарезервировано. Не используется.

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

Если операция выполнена успешно, функция возвращает CR_SUCCESS. В противном случае возвращается один из кодов ошибок с префиксом CR_, определенных в Cfgmgr32.h.

Код возврата Описание
CR_NO_SUCH_DEVICE_INTERFACE
Возможно, указывает на отсутствие псевдонима указанного класса интерфейса.
CR_OUT_OF_MEMORY
Недостаточно памяти для выполнения запроса.
CR_BUFFER_SMALL
Переданный буфер слишком мал.

Комментарии

Интерфейсы устройств считаются псевдонимами, если они предоставляются одним и тем же базовым устройством и имеют идентичные строки ссылок на интерфейс, но имеют разные классы интерфейса.

Параметр pszDeviceInterface указывает экземпляр интерфейса устройства для конкретного устройства, принадлежащий к определенному классу интерфейса, с определенной ссылочной строкой. CM_Get_Device_Interface_Alias возвращает другой экземпляр интерфейса устройства для того же устройства и ссылочной строки, но другого класса интерфейса, если он существует.

Например, драйвер функции для отказоустойчивого тома может зарегистрировать и задать два интерфейса устройства: один из классов интерфейса отказоустойчивого тома и один из классов интерфейса тома. Другой драйвер может вызвать CM_Get_Device_Interface_Alias с символьной ссылкой для одного из интерфейсов и спросить, существует ли другой интерфейс, указав его класс интерфейса.

Два интерфейса устройства со строками ссылок NULL являются псевдонимами, если они предоставляются тем же базовым устройством и имеют разные GUID класса интерфейса.

Требования

Требование Значение
Минимальная версия клиента Доступно в Microsoft Windows 2000 и более поздних версиях Windows.
Целевая платформа Персональный компьютер
Верхняя часть cfgmgr32.h (включая Cfgmgr32.h)
Библиотека Cfgmgr32.lib