IWMDMDevice2::GetCanonicalName 方法 (mswmdm.h)
GetCanonicalName 方法會擷取裝置的正式名稱。
語法
HRESULT GetCanonicalName(
[out] LPWSTR pwszPnPName,
[in] UINT nMaxChars
);
參數
[out] pwszPnPName
標準名稱的寬字元緩衝區。 呼叫端必須配置並釋放此緩衝區。
[in] nMaxChars
整數,指定可在 pwszPnPName 中放置的最大字元數,包括終止字元。
傳回值
方法會傳回 HRESULT。 可能的值包括 (但不限於) 下表中的這些值。
傳回碼 | Description |
---|---|
|
pwszPnPName 參數是無效或 NULL 指標。 |
|
裝置不支援標準名稱。 |
|
指定的緩衝區對於標準名稱而言太小。 |
|
發生未指定的錯誤。 |
備註
應用程式可以使用擷取的正式名稱來呼叫 IWMDeviceManager2::GetDeviceFromCanonicalName ,以再次尋找此裝置。
傳回的標準名稱格式<為 PnP 裝置路徑>$<index,其中 index> 是服務提供者針對指定 PnP 裝置路徑傳回的裝置物件中以零起始的索引。
標準名稱的格式可能會在未來的 Windows 媒體 裝置管理員 版本中變更。
範例
下列 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 |