共用方式為


IMbnInterface::GetPreferredProviders 方法 (mbnapi.h)

重要

從 Windows 10 1803 版開始,本節所述的 Win32 API 會由 Windows.Networking.Connectivity 命名空間中的 Windows 執行階段 API 取代。

取得慣用提供者的清單。

語法

HRESULT GetPreferredProviders(
  [out, retval] SAFEARRAY **preferredProviders
);

參數

[out, retval] preferredProviders

包含慣用提供者清單之 MBN_PROVIDER 結構的陣列指標。 如果這個方法傳回 S_OK以外的任何值,則此參數為 NULL。 當 GetPreferredProviders 傳回 S_OK時,呼叫端應用程式必須呼叫 SafeArrayDestroy 來釋放配置的記憶體。

傳回值

這個方法可以傳回其中一個值。

傳回碼 描述
S_OK
已成功完成命令。 preferredProviders 包含有效值。
E_PENDING
信息無法使用。 行動寬頻服務目前正在探查慣用的提供者清單。 呼叫端應用程式可以藉由註冊 IMbnInterfaceEventsOnPreferredProvidersChange 方法,在數據可用時收到通知。
E_MBN_PIN_REQUIRED
裝置需要輸入 PIN 才能進行這項作業。
E_MBN_SIM_NOT_INSERTED
不會插入 SIM 卡。
E_MBN_BAD_SIM
在裝置中插入不正確的 SIM 卡。
HRESULT_FROM_WIN32 (ERROR_READ_FAULT)
無法從 SIM 卡或裝置記憶體讀取。 例如,SIM 沒有布建慣用的提供者資訊。
HRESULT_FROM_WIN32 (ERROR_NOT_SUPPORTED)
裝置不支援這項作業。 CDMA 裝置一律會傳回此值。

備註

GetPreferredProviders 會傳回儲存在介面慣用提供者清單中的提供者清單。

針對可復原的錯誤 E_MBN_PIN_REQUIREDE_MBN_SIM_NOT_INSERTEDE_MBN_BAD_SIM,行動寬頻服務會在錯誤狀況超過時,再次查詢提供者清單的裝置。 例如,如果裝置需要輸入 PIN 才能取得提供者清單, 則 GetPreferredProviders 會傳回 E_MBN_PIN_REQUIRED。 當應用程式輸入 PIN 以解除鎖定裝置時,行動寬頻服務會再次嘗試從裝置取得此資訊。

當操作系統在發生可復原錯誤之後查詢裝置以取得提供者清單時, GetPreferredProviders 會立即傳回 E_PENDING。 新的查詢完成後,會使用適當的回呼方法,將通知傳送至呼叫端應用程式。 例如,成功 PIN 解除鎖定作業之後,會呼叫 IMbnPinEventsOnEnterComplete 方法。 從 SIM 卡錯誤復原之後,會呼叫 IMbnInterfaceEventsOnReadyStateChange 方法。

行動寬頻服務會藉由呼叫 IMbnInterfaceEventsOnPreferredProvidersChange 方法,更新應用程式有關任何新查詢的狀態。

在某些情況下,裝置的慣用提供者清單可以透過SMS或OTA網路更新, (無線更新) 。 操作系統會呼叫 IMbnInterfaceEventsOnPreferredProvidersChange 方法,通知應用程式慣用提供者清單中的任何變更。

規格需求

需求
最低支援的用戶端 Windows 7 [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 都不支援
目標平台 Windows
標頭 mbnapi.h

另請參閱

IMbnInterface