Как получить версию Windows для удаленного компьютера с помощью кода - PullRequest
0 голосов
/ 11 мая 2018

Я занимаюсь разработкой небольшого приложения с использованием Visual Studio 2013, VB для сканирования диапазона IP-адресов в одной сети

мое приложение получит IP и вернет

Статус пинга (True или False)

Имя компьютера

MAC-адрес

и все ОК

У меня вопрос, нужно ли мне получить удаленный компьютер с Windows (XP или 7 или 8)

используя IP-адрес или имя компьютера, как я могу это сделать?

Ответы [ 3 ]

0 голосов
/ 13 мая 2018
   Using wClient As New WebClient
                   dim myip as string = wClient.DownloadString("http://tools.feron.it/php/ip.php")

                End Using

может быть, поможет найти IP легко.удачи

0 голосов
/ 29 июля 2018

Наконец, я использовал управление системой, как показано ниже

(после импорта System.Management)

Я использовал две функции

: сначала для подключения к удаленному компьютеру, а затем для сбора данных

Private Function tryConnect(SystemName As String)
        Try
            Dim ComputerConnection As New System.Management.ConnectionOptions
            ' to add user name and password
            'ComputerConnection.Username = "UserName"
            'ComputerConnection.Password = "Password"

            With ComputerConnection
                .Impersonation = System.Management.ImpersonationLevel.Impersonate
                .Authentication = System.Management.AuthenticationLevel.Packet

            End With
            'connect to WMI
            MyMgtScope = New System.Management.ManagementScope("\\" & SystemName & "\root\CIMV2", ComputerConnection)
            MyMgtScope.Connect()
            Return MyMgtScope.IsConnected
        Catch ex As Exception
            Return False
        End Try
End Function

private sub GetOsdata()
    if tryConnect(remoteComputerName) = False then Exit Sub ' or show some message
    Dim MyMgtScope As System.Management.ManagementScope
    Dim MyObjSearcher As System.Management.ManagementObjectSearcher
    Dim MyColl As System.Management.ManagementObjectCollection
    Dim MyObj As System.Management.ManagementObject
    Dim ComputerOSVersion , ComputerOSServiceBack ,OSbit As String
    MyObjSearcher = New System.Management.ManagementObjectSearcher(MyMgtScope.Path.ToString, "Select * FROM Win32_OperatingSystem")
                ' Execute the query
    MyColl = MyObjSearcher.Get
                For Each MyObj In MyColl
                    ComputerOSVersion = MyObj.GetPropertyValue("Caption").ToString
                    ComputerOSServiceBack = MyObj.GetPropertyValue("ServicePackMajorVersion").ToString
                    OSbit = MyObj.GetPropertyValue("OSArchitecture").ToString
               Next

               MyObjSearcher = Nothing
               MyColl = Nothing
End Sub
0 голосов
/ 11 мая 2018
Dim osVer As String
osVer = System.Environment.OSVersion.ToString
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...