IMbnRegistration::GetProviderID 方法 (mbnapi.h)

重要

从 Windows 10 版本 1803 开始,本部分所述的 Win32 API 将替换为 Windows.Networking.Connectivity 命名空间中的 Windows 运行时 API。

获取当前注册网络的提供程序 ID。

语法

HRESULT GetProviderID(
  [out] BSTR *providerID
);

parameters

[out] providerID

指向包含当前注册的提供程序 ID 的字符串的指针。 最大长度为 MBN_PROVIDERID_LEN 个字符。 仅当方法返回 成功S_OK 时,才会填充字符串。 成功后,调用应用程序必须通过调用 SysFreeString 释放分配的内存。

返回值

此方法可以返回其中一个值。

返回代码 说明
S_OK
操作成功。
E_PENDING
提供程序 ID 不可用。 移动宽带服务当前正在探测设备中的信息。 当提供程序 ID 可用时,移动宽带服务将调用 IMbnRegistrationEventsOnRegisterModeAvailable 方法。
E_MBN_PIN_REQUIRED
需要 PIN 才能获取提供程序 ID。
MBN_SIM_NOT_INSERTED
设备中未插入 SIM 卡。
E_MBN_BAD_SIM
设备中插入了错误的 SIM 卡。

注解

GetProviderID 方法获取当前注册的提供程序的 ID。 对于自动网络选择模式,这是设备当前注册到的网络的 ID。 如果网络选择模式为手动模式,则此字段将包含设备将尝试注册到的网络的提供程序 ID。 对于 CDMA 设备,如果提供程序 ID 未知,则将其设置为 MBN_CDMA_DEFAULT_PROVIDER_ID

当移动宽带设备从一个网络移动到另一个网络时,此信息可能会更改。 这包括每当网络注册状态从 MBN_REGISTER_STATE_HOME 更改为 MBN_REGISTER_STATE_SEARCHING 时。 当已注册的网络发生更改时(例如,当网络将其注册从一个提供程序移动到另一个提供程序时),也会发生这种情况。 进行此类更改后,移动宽带服务将调用 IMbnRegistrationEventsOnRegisterStateChange 方法。 发生这种情况时,应用程序应调用 GetProviderID

对于可恢复的错误 E_MBN_PIN_REQUIRED,当错误条件超过 (输入 PIN) 时,移动宽带服务将再次尝试从设备中提取此信息。 之后,移动宽带服务将调用 IMbnRegistrationEventsOnPacketServiceStateChange 方法。

要求

   
最低受支持的客户端 Windows 7 [桌面应用 |UWP 应用]
最低受支持的服务器 无受支持的版本
目标平台 Windows
标头 mbnapi.h

另请参阅

IMbnRegistration