共用方式為


NdisCoAssignInstanceName 函式 (ndis.h)

NdisCoAssignInstanceName 會將實例名稱指派給 VC,並讓 NDIS 向 Windows Management Instrumentation (WMI) 註冊指派名稱的 GUID (全域唯一標識符) 。

語法

NDIS_STATUS NdisCoAssignInstanceName(
  [in]            NDIS_HANDLE  NdisVcHandle,
  [in]            PNDIS_STRING BaseInstanceName,
  [out, optional] PNDIS_STRING VcInstanceName
);

參數

[in] NdisVcHandle

指定要命名之 VC 的句柄。 當 VC 最初使用 NdisCoCreateVc 建立時,NDIS 會提供此句柄,無論是由客戶端準備進行撥出呼叫,還是由呼叫管理員準備將傳入呼叫分派給用戶端。

[in] BaseInstanceName

描述呼叫端提供的 Unicode 字串,指定 VC 基底名稱的NDIS_STRING型別指標。 基底名稱可以是任何可本地化的 Unicode 字串,可唯一識別迷你埠驅動程式範圍內其他具名 VM 的 VC。 針對 Windows Vista 和更新版本,NDIS 會將NDIS_STRING類型定義為 UNICODE_STRING 類型。

[out, optional] VcInstanceName

呼叫端配置的NDIS_STRING型別指標,此例程會傳回 Unicode 字串,指定為 VC 指派的 NDIS 指派實例名稱。

傳回值

NdisCoAssignInstanceName 可以傳回下列任一項:

傳回碼 Description
NDIS_STATUS_SUCCESS
NDIS 已將實例名稱指派給指定的 VC,並使用 WMI 註冊實例名稱的 GUID。
NDIS_STATUS_FAILURE
嘗試將實例名稱指派給 VC 失敗。
NDIS_STATUS_RESOURCES
NDIS 無法為實例名稱配置緩衝區。

備註

使用 NdisCoCreateVc 起始 VC 的設定之後,呼叫管理員或連接導向用戶端可以使用 NdisCoAssignInstanceName 來命名 VC。 呼叫 NdisCoAssignInstanceName 會導致 NDIS 指派實例名稱,並使用 WMI 註冊實例名稱。 然後,WMI 用戶端可以列舉 VC 和查詢或設定相對於 VC 的 OID。

整合式迷你埠呼叫管理員 (MCM) 驅動程式無法使用 NdisCoAssignInstanceName 為其 VM 命名。 相反地,MCM 驅動程式應該為 VC 建立自定義 GUID 和 OID,並使用 NDIS 註冊 GUID 對 OID 對應。

NDIS 藉由將索引附加至呼叫端所指向的基底名稱,為指定的 VC 建立實例名稱。 NDIS 會將完整的實例名稱 (基底名稱 + 索引) 傳回給呼叫端,然後使用WMI 註冊實例名稱的 GUID。 WMI 用戶端只能列舉和查詢具名 VM。 WMI 用戶端看不到未命名的 VM。

如果指定的 VC 已經有實例名稱 (先前呼叫 NdisCoAssignInstanceName) 指派,NDIS 會傳回NDIS_STATUS_SUCCESS,以及指派給 VC 的原始 實例名稱。 實例名稱會保留指派給 VC,直到刪除該 VC 為止。

呼叫端可以將傳回的實例名稱與先前從 NdisCoCreateVc 傳回給呼叫端之具名 VC 的句柄產生關聯。 不過,NDIS 會繼續使用 VC 句柄,而不是實例名稱,以在後續呼叫中參考 VC。 NdisCoAssignInstanceName 的呼叫端可能會發現需要將實例名稱傳回給其他管理實體。

呼叫端負責釋放包含傳回實例名稱的緩衝區。 使用 NdisCoDeleteVc 刪除具名 VC 之後,呼叫端必須使用 NdisFreeString 釋放緩衝區。

規格需求

需求
最低支援的用戶端 支援 NDIS 6.0 和 NDIS 5.1 驅動程式 (請參閱 Windows Vista 中的 NdisCoAssignInstanceName (NDIS 5.1) ) 。 支援 NDIS 5.1 驅動程式 (請參閱 Windows XP 中的 NdisCoAssignInstanceName (NDIS 5.1) ) 。
目標平台 桌面
標頭 ndis.h (包括 Ndis.h)
程式庫 Ndis.lib
IRQL DISPATCH_LEVEL
DDI 合規性規則 Irql_Connection_Function (ndis)

另請參閱

MiniportCoOidRequest

MiniportOidRequest

NdisCoCreateVc

NdisCoDeleteVC

NdisFreeString

UNICODE_STRING