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

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

04.04.2010, 14:39. Показов 838. Ответов 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
Ответ Создать тему
Новые блоги и статьи
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK сделайте это, JDK, то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Перейдите по ссылке:. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru