Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 07.02.2010
Сообщений: 26

Коннект к базе DHCP

04.04.2010, 14:39. Показов 849. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Возможно вопрос немного не по теме, но мне очень необходимо каким-либо образом сохранить в таблице IP-адреса и имена компьютеров в ЛВС. Подскажите если знаете как это сделать средствами VB. Заранее благодарен!!!
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
04.04.2010, 14:39
Ответы с готовыми решениями:

Коннект к базе AccessXP
Имеется офис XP и VB 6.0 При попытке приконнектиться к базе через Jet, получаю 'Unrecognized data base format'. Что делать? Подскажите...

DHCP на базе Win2012 + VLAN на базе D-Link
Здравствуйте, уважаемые форумчане! Не судите строго, но прошу помощи в построении сети на базе VLAN, я в этом чайник, до сегодня с ними...

Коннект к базе
Пишу небольшую систему, интерфейс на яве, а все процедуры - на PL/SQL. Возникла проблема при коннекте к базе и при вызове функции от...

2
0 / 0 / 3
Регистрация: 28.01.2010
Сообщений: 279
04.04.2010, 17:39
Можно через апишки получить доступ к списку IP сервера, но он хранит все записи в том числе и старые которых уже нет. Чтобы реально получить список нужно получить доступ к базе DHCP, этого не знаю не пробовал.А можно пропинговать диапазон если знаешь какие адреса назначает сервак, и ответившие машины сохранять в базе или в текстовом файле,это я делал, вот код пинга:

Объявляешь в модуле:
Public Const SOCKET_ERROR = 0
Public Type WSAdata
wVersion As Integer
wHighVersion As Integer
szDescription(0 To 255) As Byte
szSystemStatus(0 To 128) As Byte
iMaxSockets As Integer
iMaxUdpDg As Integer
lpVendorInfo As Long
End Type
Public Type Hostent
h_name As Long
h_aliases As Long
h_addrtype As Integer
h_length As Integer
h_addr_list As Long
End Type
Public Type IP_OPTION_INFORMATION
TTL As Byte
Tos As Byte
Flags As Byte
OptionsSize As Long
OptionsData As String * 128
End Type
Public Type IP_ECHO_REPLY
Address(0 To 3) As Byte
Status As Long
RoundTripTime As Long
DataSize As Integer
Reserved As Integer
Data As Long
Options As IP_OPTION_INFORMATION
End Type
Public Declare Function GetHostByName Lib 'wsock32.dll' Alias 'gethostbyname' (ByVal HostName As String) As Long
Public Declare Function WSAStartup Lib 'wsock32.dll' (ByVal wVersionRequired&, lpWSAdata As WSAdata) As Long
Public Declare Function WSACleanup Lib 'wsock32.dll' () As Long
Public Declare Sub CopyMemory Lib 'kernel32' Alias 'RtlMoveMemory' (hpvDest As Any, hpvSource As Any, ByVal cbCopy As Long)
Public Declare Function IcmpCreateFile Lib 'icmp.dll' () As Long
Public Declare Function IcmpCloseHandle Lib 'icmp.dll' (ByVal HANDLE As Long) As Boolean
Public Declare Function IcmpSendEcho Lib 'ICMP' (ByVal IcmpHandle As Long, ByVal DestAddress As Long, ByVal RequestData As String, ByVal RequestSize As Integer, RequestOptns As IP_OPTION_INFORMATION, ReplyBuffer As IP_ECHO_REPLY, ByVal ReplySize As Long, ByVal TimeOut As Long) As Boolean
Public Declare Function Beep Lib 'kernel32' (ByVal dwFreq As Long, ByVal dwDuration As Long) As Long

Public Declare Function ShellExecute& Lib 'shell32.dll' Alias 'ShellExecuteA' (ByVal _
hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVallpParameters _
As String, ByVal lpDirectory As String, ByVal nShowCmd As Long)

Public retPingString$
Public pingHostName$
Public ReciveTime_ms$

Ниже сама функция, вызывается так
Dim ret&
ret = Ping_Hosts('192.168.0.1', 32, 2000, 255)
Если ret=-1 то ошибка пинга
ret = 1 то есть хост можно добавлять в базу
а диапазон айпишек подставляешь циклом

[code]
'HostName -может быть как IP так и по имени
'cntByte -сколько байт в пакете обычно 32
'tmTimeOut - таймаут ожидания ответа от адреса милисекунд обычно 2000
'tmTTL-время жизни пакета обычно 255
Public Function Ping_Hosts(HostName As String, cntByte As Integer, tmTimeOut As Long, tmTTL As Byte) As Long
'Const HostName = '192.168.0.111'
'Const HostName = 'www.allapi.net'
Dim hFile As Long, lpWSAdata As WSAdata
Dim hHostent As Hostent, AddrList As Long
Dim Address As Long, rIP As String
Dim OptInfo As IP_OPTION_INFORMATION
Dim EchoReply As IP_ECHO_REPLY
Call WSAStartup(&H101, lpWSAdata)
If GetHostByName(HostName + String(64 - Len(HostName), 0)) <> SOCKET_ERROR Then
CopyMemory hHostent.h_name, ByVal GetHostByName(HostName + String(64 - Len(HostName), 0)), Len(hHostent)
C
0
0 / 0 / 3
Регистрация: 28.01.2010
Сообщений: 279
04.04.2010, 17:41
Забыл сказать что на форму еще Winsock1 добавить надо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
04.04.2010, 17:41
Помогаю со студенческими работами здесь

Долгий коннект к базе
Всем доброго времени суток. Имеется ib 6.0 на Win 2003. Прога, написанная на билдере. 20 юзеров. При коннекте с утра конект идёт около...

Глобальный коннект к базе?
Можно ли сделать как-то так: Не подключаться и отключаться к базе данных в начале и конце (соотв) каждого скрипта, работающего с базой...

Коннект к базе Oracle в JavaScript.
Как это можно сделать? Как это сделать лучше? Только используя JDBC через вызовы методов Java-объектов?

Коннект к базе. Логин и пароль - переменные.
Хочу соединиться с базой через переменные. Логин и пасс хранятся в переменных типа CString. CString user = &quot;user&quot;; CString...

Висящий коннект к базе через Hibernate
Здравствуйте! Делаю: EntityManager em = entityManagerFactory.createEntityManager(); И передаю его в Runnable, который каждые 500мс...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru