共用方式為


使用NET_LUID索引

NDIS 提供函數來配置和釋放建立NET_LUID值所需的 NET_LUID 索引。 NDIS 介面提供者必須配置NET_LUID值來註冊介面。

若要配置NET_LUID索引,介面提供者會呼叫 NdisIfAllocateNetLuidIndex 函 式。 配置索引之後,介面提供者會呼叫 NDIS_MAKE_NET_LUID 宏來建置NET_LUID值。 若要釋放NET_LUID索引,介面提供者會呼叫 NdisIfFreeNetLuidIndex 函 式。

NdisIfAllocateNetLuidIndex 會嘗試配置與呼叫端在 IfType 參數中指定的介面類別型相關聯的 24 位值,而且對本機電腦而言是唯一的。 如果索引配置成功, NdisIfAllocateNetLuidIndex 會傳回NDIS_STATUS_SUCCESS,並在 pNetLuidIndex 參數中提供的位址提供NET_LUID索引。 如果 NDIS 找不到免費的NET_LUID索引, NdisIfAllocateNetLuidIndex 會傳回NDIS_STATUS_RESOURCES。 NdisIfAllocateNetLuidIndex 可以傳回其他 NDIS 狀態值,以指出 NDIS 內的內部錯誤。 NDIS 會在電腦後續重新開機時,記錄此索引的配置。 即使電腦重新開機之後,NDIS 也不會針對未來的呼叫端使用特定的索引,直到配置該索引的介面提供者呼叫該索引的 NdisIfFreeNetLuidIndex 函式為止。

NdisIfFreeNetLuidIndex 釋放先前配置的 NET_LUID 索引,讓 NDIS 可以將該索引重新配置到另一個介面。 呼叫端必須在 IfType 中撥入電話者呼叫 NdisIfAllocateNetLuidIndex 時所使用的相同介面類別型,以配置NET_LUID索引。 如果免費作業成功, NdisIfFreeNetLuidIndex 會傳回NDIS_STATUS_SUCCESS。 如果 對 NdisIfFreeNetLuidIndex 的呼叫失敗,介面提供者應該移除儲存在與NET_LUID索引相關的持續性儲存體中的任何資訊。 移除資訊可確保提供者不會嘗試釋放每部電腦重新開機後已釋放的索引。 呼叫 NdisIfFreeNetLuidIndex之後,除非呼叫相同介面類別型的 NdisIfAllocateNetLuidIndex 再次呼叫 NdisIfAllocateNetLuidIndex ,否則呼叫端不得再次使用 NET_LUID NET_LUID值。

若要註冊網路介面,介面提供者必須將有效的NET_LUID值傳遞至 NdisIfRegisterInterface 函式。 如需註冊網路介面的詳細資訊,請參閱 註冊網路介面