Смена IP-адреса

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
3D-Man
Начинающий
Начинающий
 
Сообщения: 4
Зарегистрирован: 04.06.2003 (Ср) 10:26
Откуда: Санкт-Петербург

Смена IP-адреса

Сообщение 3D-Man » 04.06.2003 (Ср) 10:32

Задача связана с переключением на резервный сервер при падении основного. Хотелось-бы написать приложение, которое при наступлении определенных условий меняло-бы IP-адрес на локальной машине. Кто-нибудь знает как это сделать?

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 04.06.2003 (Ср) 11:04

Через WMI :)

3D-Man
Начинающий
Начинающий
 
Сообщения: 4
Зарегистрирован: 04.06.2003 (Ср) 10:26
Откуда: Санкт-Петербург

Сообщение 3D-Man » 04.06.2003 (Ср) 11:53

Простите ламера... А что это?

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 04.06.2003 (Ср) 12:03

Это Windows Management Instrumentation. Есть в Windows 2000 и выше.

В MSDN есть подробное описание всех классов WМI и того, как ими пользоваться.

В двух словах это будет выглядеть примерно так:

Код: Выделить всё
set wmiobj = getobject("winmgmts:{impersonationLevel=impersonate}\\COMPNAME)
set wos = wmiobj.instancesof(wmiclassname)




СOMPNAME - имя машины, с которой надо получить инфу. wmiclassname - имя класса WMI, который надо получить. wos будет коллекцией, которую можно пребрать for each. Вообще есть статья WMI Scripting Primer в ней много интересного написано по этому поводу.
Последний раз редактировалось RayShade 04.06.2003 (Ср) 12:46, всего редактировалось 1 раз.

3D-Man
Начинающий
Начинающий
 
Сообщения: 4
Зарегистрирован: 04.06.2003 (Ср) 10:26
Откуда: Санкт-Петербург

Сообщение 3D-Man » 04.06.2003 (Ср) 12:23

А где бы с этой статьей ознакомиться?
На сайте я ее что-то не нашел...

GoGosha
Постоялец
Постоялец
 
Сообщения: 642
Зарегистрирован: 02.08.2002 (Пт) 9:14
Откуда: Russia

Сообщение GoGosha » 04.06.2003 (Ср) 12:43

Он храница в реестре. Не помню где. для получения ключей используй программу Regmon. Про работу с регестром можешь прочитить на этом же форуме

Sebas
Неуловимый Джо
Неуловимый Джо
Аватара пользователя
 
Сообщения: 3626
Зарегистрирован: 12.02.2002 (Вт) 17:25
Откуда: столько наглости такие вопросы задавать

Сообщение Sebas » 04.06.2003 (Ср) 12:49

Залезть на MS впадлу?
- Я никогда не понимал, почему они приходят ко мне чтобы умирать?

sebas<-@->mail.ru

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 04.06.2003 (Ср) 12:57

Тогда уж проще через Shell запускать ipconfig.exe с нужными параметрами :) зачем реестр то сюда привинчивать? :?

3D-Man
Начинающий
Начинающий
 
Сообщения: 4
Зарегистрирован: 04.06.2003 (Ср) 10:26
Откуда: Санкт-Петербург

Сообщение 3D-Man » 05.06.2003 (Чт) 13:28

Боюсь, что этот способ пригоден только при использовании DHCP.
В данном случае нужно всего-лишь следующее - при переходе на резервный сервер измнить IP-адреса на основном и резервном сервере (а их там по 4 адреса на каждом). Вручную этот процесс занимает слишком много времени. Хотелось бы сделать это одним щелчком мыши.

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 05.06.2003 (Чт) 13:32

Ну тогда WMI тебя спасет. Получай все инстансы класса Win32_NetworkAdapterConfiguration и смотри в нем проперть IPAddress. А для ссмены пользуйся методом NetworkAdapterConfiguration.EnableStatic(IPAddress As String, SubnetMask As String) As Integer

GoGosha
Постоялец
Постоялец
 
Сообщения: 642
Зарегистрирован: 02.08.2002 (Пт) 9:14
Откуда: Russia

Сообщение GoGosha » 05.06.2003 (Чт) 15:46

RayShade писал(а):Тогда уж проще через Shell запускать ipconfig.exe с нужными параметрами :) зачем реестр то сюда привинчивать? :?


Сам так делал. Но мне тогда читать надо было


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: AhrefsBot и гости: 124

    TopList