繁体   English   中英

C# 获取热点中的TetheringClients

[英]C# GetTetheringClients in Hotspot

我已经在 C # 中编写了一个应用程序,它可以打开和关闭 Windows 中的移动热点。 我的项目还需要其他有用的功能。

今天,我的目标是创建一个我当前连接的设备的列表,但我还没有通过 Google 做到这一点。

我不知道如何显示我连接的设备及其 MAC 地址和名称。 有人有想法吗?

我在 Microsoft 文档中找到了这个页面,但不幸的是,它对我没有任何帮助。 https://docs.microsoft.com/en-us/uwp/api/windows.networking.networkoperators.networkoperatortetheringmanager.gettetheringclients?view=winrt-19041

我是 C 的初学者#所以请不要生气:)

无效的基本代码:

var tetheringManager = Windows.Networking.NetworkOperators.NetworkOperatorTetheringManager.CreateFromConnectionProfile(connectionProfile);

                    var clientCount = tetheringManager.ClientCount;
                    ClientCount(clientCount);
                    var maxClientCount = tetheringManager.MaxClientCount;
                    MaxClientCount(maxClientCount);

                    var currentClients = tetheringManager.GetTetheringClients().ToArray(); // NOT WORKING
                    foreach(var client in currentClients)
                    {
                        MessageBox.Show(client.ToString());
                    }

在此处输入图像描述

我为我的项目重用了这个库: https://github.com/ashvin-bhuttoo/PersistentHotspot

C# 获取热点中的TetheringClients

显示的消息框意味着,您已获得TetheringClients 但它不能直接串起来。 您需要创建一个新的 class 来存储客户端主机名和 MAC 地址。

var currentClients = tetheringManager.GetTetheringClients(); 
foreach (var client in currentClients)
{
    var cilentinfo = new ClientInfo()
    {
        DisplayName = client.HostNames[0].DisplayName,
        MacAddress = client.MacAddress
    };
    client.ToString();
}

public class ClientInfo
{
    public string DisplayName { get; set; }
    public string MacAddress { get; set; }

    public override string ToString()
    {
        return DisplayName + MacAddress;
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM