NetworkOperatorTetheringAccessPointConfiguration.IsAuthenticationKindSupportedAsync Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Асинхронно извлекает значение, указывающее, допускает ли адаптер Wi-Fi настройку точки доступа с определенным типом проверки подлинности.
public:
virtual IAsyncOperation<bool> ^ IsAuthenticationKindSupportedAsync(TetheringWiFiAuthenticationKind authenticationKind) = IsAuthenticationKindSupportedAsync;
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperation<bool> IsAuthenticationKindSupportedAsync(TetheringWiFiAuthenticationKind const& authenticationKind);
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperation<bool> IsAuthenticationKindSupportedAsync(TetheringWiFiAuthenticationKind authenticationKind);
function isAuthenticationKindSupportedAsync(authenticationKind)
Public Function IsAuthenticationKindSupportedAsync (authenticationKind As TetheringWiFiAuthenticationKind) As IAsyncOperation(Of Boolean)
Параметры
- authenticationKind
- TetheringWiFiAuthenticationKind
Значение перечисления TetheringWiFiAuthenticationKind , указывающее тип проверки подлинности для запроса.
Возвращаемое значение
Объект асинхронной операции, который по завершении содержит true
значение , если поддерживается тип проверки подлинности; в противном случае — значение false
.
- Атрибуты
Требования к Windows
Семейство устройств |
Windows 11, version 24H2 (появилось в 10.0.26100.0)
|
API contract |
Windows.Foundation.UniversalApiContract (появилось в v19.0)
|
Возможности приложения |
wiFiControl
|
Примеры
В приведенном ниже примере кода перечислены два открытых метода: для задания полосы и типа проверки подлинности для соединения с привязкой. Существует также пример частного метода для получения текущей конфигурации привязки активного подключения к Интернету на компьютере. Объект конфигурации привязки содержит заданные свойства band и authentication type, а также является единственным параметром для API ConfigureAccessPointAsync , который используется для применения изменений.
В main первые несколько строк кода задают диапазон (с помощью значения 6 ГГц, если оно доступно). Также обратите внимание на использование класса ApiInformation для проверка, поддерживается ли определенный тип проверки подлинности. После этого код задает тип проверки подлинности. Этот код демонстрирует использование значений перечисления из TetheringWiFiBand и TetheringWiFiAuthenticationKind.
В открытых методах SetBandForWiFiAccessPointAsync и SetAuthenticationKindForWiFiAccessPointAsync код демонстрирует следующее:
- Получение конфигурации ТОЧКИ для активного подключения к Интернету на компьютере.
- Обновление свойств диапазона и типа проверки подлинности в объекте конфигурации (NetworkOperatorTetheringAccessPointConfiguration).
- Применение обновленной конфигурации и возврат успешно примененной конфигурации (или
null
в случае сбоя).
using System;
using System.Threading.Tasks;
using Windows.Foundation.Metadata;
using Windows.Networking.NetworkOperators;
using Windows.Networking.Connectivity;
namespace DemoApp
{
class DemoClass
{
private static NetworkOperatorTetheringAccessPointConfiguration GetCurrentAPConfig()
{
// Get the connection profile associated with the internet connection currently used by the local machine.
ConnectionProfile currentConnectionProfile = NetworkInformation.GetInternetConnectionProfile();
if (currentConnectionProfile == null)
{
throw new InvalidOperationException("Machine isn't connected to the internet.");
}
NetworkOperatorTetheringManager tetheringManager =
NetworkOperatorTetheringManager.CreateFromConnectionProfile(currentConnectionProfile);
NetworkOperatorTetheringAccessPointConfiguration configuration =
tetheringManager.GetCurrentAccessPointConfiguration();
return configuration;
}
public static async Task<NetworkOperatorTetheringAccessPointConfiguration>
SetBandForWiFiAccessPointAsync(TetheringWiFiBand wifiBand)
{
NetworkOperatorTetheringAccessPointConfiguration configuration = GetCurrentAPConfig();
if (!await configuration.IsBandSupportedAsync(wifiBand))
{
throw new ArgumentException("Band parameter isn't supported on AP.");
}
configuration.Band = wifiBand;
try
{
await tetheringManager.ConfigureAccessPointAsync(configuration);
return configuration;
}
catch
{
return null;
}
}
public static async Task<NetworkOperatorTetheringAccessPointConfiguration>
SetAuthenticationKindForWiFiAccessPointAsync(TetheringWiFiAuthenticationKind wiFiAuthenticationKind)
{
if (!ApiInformation.IsApiContractPresent("Windows.Foundation.UniversalApiContract", 16))
{
throw new InvalidOperationException("OS doesn't support configuring auth.");
}
NetworkOperatorTetheringAccessPointConfiguration configuration = GetCurrentAPConfig();
if (!await configuration.IsAuthenticationKindSupportedAsync(wiFiAuthenticationKind))
{
throw new ArgumentException("Authentication kind parameter isn't supported on AP.");
}
configuration.AuthenticationKind = wiFiAuthenticationKind;
try
{
await tetheringManager.ConfigureAccessPointAsync(configuration);
return configuration;
}
catch
{
return null;
}
}
public static void Main()
{
NetworkOperatorTetheringAccessPointConfiguration sampleResult1 = null;
if (ApiInformation.IsEnumNamedValuePresent(
"Windows.Networking.NetworkOperators.TetheringWiFiBand", "SixGigahertz"))
{
sampleResult1 = await SetBandForWiFiAccessPointAsync(TetheringWiFiBand.SixGigahertz);
}
else
{
sampleResult1 = await SetBandForWiFiAccessPointAsync(TetheringWiFiBand.FiveGigahertz);
}
NetworkOperatorTetheringAccessPointConfiguration sampleResult2 =
await SetAuthenticationKindForWiFiAccessPointAsync(TetheringWiFiAuthenticationKind.Wpa3);
}
}
}