powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Определение включенных компьютеров в сети
16 сообщений из 16, страница 1 из 1
Определение включенных компьютеров в сети
    #36773868
Dumm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте!
Есть такая проблема... Нужно определить включенные компы в сети (в домене). Машин довольно много, поэтому будет сканироваться весь диапазон адресов 0..255. Любое обращение к компу (попытка открытия файла, определение имени по IP-шнику) занимает продолжительное время, если данный комп выключен или вовсе отсутствует.
Нужно что-то вроде ping, только в VB среде. Использование WinSock тоже не годится, так как нужно тогда на каждую машину ставить клиента. Как просканировать IP-шники и быстро определить включенные машины средствами VB?
Спасибо.
...
Рейтинг: 0 / 0
Определение включенных компьютеров в сети
    #36773871
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Определение включенных компьютеров в сети
    #36773878
Dumm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо, попробую.
...
Рейтинг: 0 / 0
Определение включенных компьютеров в сети
    #36774238
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
также можно попробовать
Код: plaintext
net view
ответ около секунды и список компов готов
...
Рейтинг: 0 / 0
Определение включенных компьютеров в сети
    #36774277
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HandKotтакже можно попробовать
Код: plaintext
net view
ответ около секунды и список компов готов

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Option Explicit

Public Declare Function OemToChar Lib "user32" Alias "OemToCharA" (ByVal lpszSrc As String, ByVal lpszDst As String) As Long

Public Sub Main()
    Dim ws As New IWshRuntimeLibrary.WshShell, s As String, ss As String
    Dim f As New IWshRuntimeLibrary.FileSystemObject
    
    s = ws.Exec("D:\WINDOWS\system32\net.exe view").StdOut.ReadAll
    ss = s
    OemToChar ss, s
    
    Debug.Print s
End Sub
...
Рейтинг: 0 / 0
Определение включенных компьютеров в сети
    #36774289
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Точнее так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Option Explicit

Public Declare Function OemToChar Lib "user32" Alias "OemToCharA" (ByVal lpszSrc As String, ByVal lpszDst As String) As Long

Public Sub Main()
    Dim ws As New IWshRuntimeLibrary.WshShell, s As String, ss As String
    Dim f As New Scripting.FileSystemObject
    
    s = ws.Exec(f.GetSpecialFolder(SystemFolder) & "\net.exe view").StdOut.ReadAll
    ss = s
    OemToChar ss, s
    
    Debug.Print s
End Sub

Но так мелькает окошко консоли - чтобы оно не мелькало нужно вызывать net view используя CreateProcess, скрывая консоль и перехватывая тот же StdOut...
...
Рейтинг: 0 / 0
Определение включенных компьютеров в сети
    #36774323
kiv-1980
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HandKotтакже можно попробовать
Код: plaintext
net view
ответ около секунды и список компов готов
К сожалению у утилиты net, нет возможности вывести IP адрес машины. Чаще всего пригождается IP адрес, а не имя компа в сети. А так работает она быстро.
...
Рейтинг: 0 / 0
Определение включенных компьютеров в сети
    #36774468
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
для автора, нужно было
автор Нужно определить включенные компы в сети (в домене).
а получив список компов, можно определить и их адреса

при помощи PING можно определить адреса доступных компов, но при наличии более одной подсети, кол-во циклов для определения возрастает в неколько раз
...
Рейтинг: 0 / 0
Определение включенных компьютеров в сети
    #36775107
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: Dumm
> Здравствуйте!
> Есть такая проблема... Нужно определить включенные компы в сети (в домене). Машин довольно много,

Я вот не совсем понимаю, у админов есть спец-утилиты, которые мониторят кто и что делается в сети зачем ещё один
велосипед???

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Определение включенных компьютеров в сети
    #36775223
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игорь Горбонос
> Автор: Dumm
> Здравствуйте!
> Есть такая проблема... Нужно определить включенные компы в сети (в домене). Машин довольно много,

Я вот не совсем понимаю, у админов есть спец-утилиты, которые мониторят кто и что делается в сети зачем ещё один
велосипед???



Мне это нужно было когда писал скрипт.
В скрипте на доступные компы раскидывались задания.
Получилось что-то вида "распределенных вычислений"
...
Рейтинг: 0 / 0
Определение включенных компьютеров в сети
    #37221734
GekoO
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AndrFТочнее так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Option Explicit

Public Declare Function OemToChar Lib "user32" Alias "OemToCharA" (ByVal lpszSrc As String, ByVal lpszDst As String) As Long

Public Sub Main()
    Dim ws As New IWshRuntimeLibrary.WshShell, s As String, ss As String
    Dim f As New Scripting.FileSystemObject
    
    s = ws.Exec(f.GetSpecialFolder(SystemFolder) & "\net.exe view").StdOut.ReadAll
    ss = s
    OemToChar ss, s
    
    Debug.Print s
End Sub

Но так мелькает окошко консоли - чтобы оно не мелькало нужно вызывать net view используя CreateProcess, скрывая консоль и перехватывая тот же StdOut...


Public Declare Function OemToChar Lib "user32" Alias "OemToCharA" (ByVal lpszSrc As String, ByVal lpszDst As String) As Long -> бУдет выдаваться ошибка "Константы, ряды устанавливаемой длины, масивы, определяемые пользователем типы и инструкции Declare, не позволенны как общие участники объектных модулей"
...
Рейтинг: 0 / 0
Определение включенных компьютеров в сети
    #37221826
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GekoOбУдет выдаваться ошибка "Константы, ряды устанавливаемой длины, масивы, определяемые пользователем типы и инструкции Declare, не позволенны как общие участники объектных модулей "
Так и не надо размещать этот код в объектном модуле
...
Рейтинг: 0 / 0
Определение включенных компьютеров в сети
    #37221833
Irenka19953
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет)
...
Рейтинг: 0 / 0
Определение включенных компьютеров в сети
    #37221893
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Irenka19953Привет)
интересно, 19953 - это год рождения?..
...
Рейтинг: 0 / 0
Определение включенных компьютеров в сети
    #37222016
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: Shocker.Pro
> +
> Irenka19953
> Привет)
> интересно, 19953 - это год рождения?..

Ставлю бутылку тёмного гёссера на март девяносто пятого


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Определение включенных компьютеров в сети
    #37222411
Фотография Shamanus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игорь Горбонос> Автор: Shocker.Pro
> +
> Irenka19953
> Привет)
> интересно, 19953 - это год рождения?..


Ставлю бутылку тёмного гёссера на март девяносто пятого



ставлю бутыль Jameson-а, что её зовут Ирина
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Определение включенных компьютеров в сети
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]