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


Метод IConnector::GetDeviceIdConnectedTo (devicetopology.h)

Метод GetDeviceIdConnectedTo получает идентификатор устройства звукового устройства, к которому подключен этот соединитель.

Синтаксис

HRESULT GetDeviceIdConnectedTo(
  [out] LPWSTR *ppwstrDeviceId
);

Параметры

[out] ppwstrDeviceId

Указатель на строковый указатель, в который метод записывает адрес строки, завершаемой null, широкой символьной строкой, содержащей идентификатор устройства подключенного устройства. Метод выделяет хранилище для строки. Вызывающий объект отвечает за освобождение хранилища, если он больше не нужен, вызвав функцию CoTaskMemFree. Если вызов GetDeviceIdConnectedTo завершается ошибкой, *ppwstrDeviceIdNULL. Сведения о CoTaskMemFreeсм. в документации по пакету SDK для Windows.

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

Если метод выполнен успешно, он возвращает S_OK. В случае сбоя возможные коды возврата включаются, но не ограничиваются значениями, приведенными в следующей таблице.

Возвращаемый код Описание
E_POINTER
Указатель ppwstrDeviceIdNULL.
E_NOTFOUND
Этот соединитель не подключен или другая сторона подключения не является другой топологией устройств (например, подключением Software_IO).
E_MEMORY
Вне памяти.

Замечания

Идентификатор устройства, полученный из этого метода, можно использовать в качестве входного параметра для метода IMMDeviceEnumerator::GetDevice.

Этот метод функционально эквивалентен, но более эффективным, чем следующий ряд вызовов методов:

  • Вызовите метод IConnector::GetConnectedTo, чтобы получить интерфейс IConnector соединителя to.
  • Вызовите метод IConnector::QueryInterface (с параметром iid для REFIID IID_IPart), чтобы получить интерфейс IPart соединителя to.
  • Вызовите метод IPart::GetTopologyObject, чтобы получить интерфейс IDeviceTopology устройства to (устройство, содержащее соединитель to).
  • Вызовите метод IDeviceTopology::GetDeviceId, чтобы получить идентификатор устройства "to".

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows Vista [только классические приложения]
минимальный поддерживаемый сервер Windows Server 2008 [только классические приложения]
целевая платформа Виндоус
заголовка devicetopology.h

См. также

интерфейса IConnector

IMMDeviceEnumerator::GetDevice