IWMDMDevice2::GetCanonicalName 메서드(mswmdm.h)
GetCanonicalName 메서드는 디바이스의 정식 이름을 검색합니다.
구문
HRESULT GetCanonicalName(
[out] LPWSTR pwszPnPName,
[in] UINT nMaxChars
);
매개 변수
[out] pwszPnPName
정식 이름의 와이드 문자 버퍼입니다. 이 버퍼는 호출자가 할당하고 해제해야 합니다.
[in] nMaxChars
종료 문자를 포함하여 pwszPnPName에 배치할 수 있는 최대 문자 수를 지정하는 정수입니다.
반환 값
이 메서드는 HRESULT를 반환합니다. 가능한 값에는 다음 표에 있는 값이 포함되지만, 이에 국한되는 것은 아닙니다.
반환 코드 | 설명 |
---|---|
|
pwszPnPName 매개 변수가 잘못되었거나 NULL 포인터입니다. |
|
디바이스는 정식 이름을 지원하지 않습니다. |
|
지정된 버퍼가 정식 이름에 비해 너무 작습니다. |
|
지정되지 않은 오류가 발생했습니다. |
설명
애플리케이션은 검색된 정식 이름을 사용하여 IWMDeviceManager2::GetDeviceFromCanonicalName 을 호출하여 이 디바이스를 다시 찾을 수 있습니다.
반환된 정식 이름은 PnP 디바이스 경로>$<인덱>스 형식 < 입니다. 여기서 인덱스는 지정된 PnP 디바이스 경로에 대해 서비스 공급자가 반환하는 디바이스 개체에 대한 인덱스(0부터 시작)입니다.
정식 이름의 형식은 향후 Windows Media 장치 관리자 릴리스에서 변경될 수 있습니다.
예제
다음 C++ 코드는 디바이스 정식 이름을 검색합니다.
// Obtain an IWMDMDevice2 interface and call
// some methods.
const UINT MAX_CHARS = 100;
CComQIPtr<IWMDMDevice2> pIWMDMDevice2(pIWMDMDevice);
if (pIWMDMDevice2 != NULL)
{
// Get the canonical name.
WCHAR canonicalName[MAX_CHARS];
hr = pIWMDMDevice2->GetCanonicalName(canonicalName, MAX_CHARS);
if (hr == S_OK)
{
// TODO: Retrieve the canonical name.
}
// Find out the driver.
myGetDriverName(pIWMDMDevice2);
}
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | Windows |
헤더 | mswmdm.h |
라이브러리 | Mssachlp.lib |