2017-03-12 11 views
-1

Visual Studio 2017でVBで非常に簡単なUniversal Windowsアプリケーションを作成しています。 アプリケーションはユーザーに基本的なネットワーク情報を提供する必要がありましたので、IPGlobalPropertiesそして、印刷 - 最初の例として、 - プロパティが正しくコードの最初の二行intを割り当てているがTextBlock内DomainName私は同じコードを試みSystem.PlatformNotSupportedException: 'Operation is not supported on this platform.' 誤差の3行目の結果、textDomainUWPアプリケーションでVB.netでIPGlobalPropertiesを取得する

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

と呼ば従来のWindowsアプリケーションでは、意図したとおりに動作しますユニバーサルアプリケーションではサポートされていませんか? 「はい」の場合、ネットワークに関する同じ情報を取得するために使用する方法は何ですか?あなたは

ルカまず

+0

-1を説明してください。私は誰も関心がないと思う説明なしで下降投票。ありがとう。 – lucamauri

答えて

0

を提供するかもしれない任意の助けのために

おかげで、IPGlobalPropertiesクラスがUWPアプリでサポートされていません。 UWPアプリケーション用の.NETには、ユニバーサルWindowsプラットフォームアプリケーションを作成するために使用できる一連の管理されたタイプが用意されていますが、すべてではありません。詳細は.NET for UWP appsを参照してください。 System.Net名前空間はuwpアプリケーションで使用できますが、IPGlobalPropertiesは使用できません。

第2に、uwpアプリで同等または類似のAPIを見つけることができます。たとえば、Windows.Networking.Connectivity名前空間に属しているuwpの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 
+0

ご協力いただきありがとうございます。このトピックに興味を持っている人のための参考資料として、https://docs.microsoft.com/en-us/uwp/api/windows.networking.hostnameというページで、 'HostName'クラスについて説明します。 – lucamauri

関連する問題