簡體   English   中英

在 UWP 應用程序上使用 VB.net 獲取 IPGlobalProperties

[英]Getting IPGlobalProperties with VB.net on a UWP application

我正在 Visual Studio 2017 中使用 VB 編寫一個非常簡單的通用 Windows 應用程序。該應用程序應該向用戶提供基本的網絡信息,所以我想使用IPGlobalProperties收集數據並打印 - 作為第一個示例 - TextBlock 中的DomainName textDomain

Dim NetworkProperties As NetworkInformation.IPGlobalProperties
NetworkProperties = NetworkInformation.IPGlobalProperties.GetIPGlobalProperties
textDomain.Text = NetworkProperties.DomainName

雖然屬性在前兩行代碼中正確分配,但第三行導致錯誤System.PlatformNotSupportedException: 'Operation is not supported on this platform.' 我在經典的 Windows 應用程序上嘗試了相同的代碼,它按預期工作,那么通用應用程序不支持此操作嗎? 如果是,我應該使用什么方法來獲取有關網絡的相同信息?

感謝您提供的任何幫助

盧卡

首先,uwp 應用程序不支持IPGlobalProperties類。 由於 .NET for UWP 應用程序提供了一組托管類型,可用於創建通用 Windows 平台應用程序,但不是全部。 有關 UWP 應用的詳細信息,請參考.NET System.Net命名空間可以在 uwp 應用程序中使用,但IPGlobalProperties不能。

其次,您可以在 uwp 應用程序中找到等效或相似的 API。 例如,您還可以在 uwp 中找到屬於Windows.Networking.Connectivity命名空間的NetworkInformation 但是調用此類的方法與System.Net.NetworkInformation命名空間的方式不同。

如果您想像IPGlobalProperties那樣獲取計算機名稱或域名,您可以調用GetHostNames()方法。 代碼如下:

Imports Windows.Networking.Connectivity
''' <summary>
''' An empty page that can be used on its own or navigated to within a Frame.
''' </summary>
Public NotInheritable Class MainPage
    Inherits Page

    Private Sub btngetinfo_Click(sender As Object, e As RoutedEventArgs)  
        Dim hostNames = NetworkInformation.GetHostNames()
        textDomain.Text = hostNames.First.ToString
    End Sub
End Class

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM