Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

IP адрес сервера [D7, MSSQL]


Stanislav ©   (2005-02-01 15:25:00) 

Можно ли из ADO узнать IP Арес сервера ?
Проблема такая есть две идентичные базы на разных серверах, клиент подключается через UDL. Если в UDL сменить сервер, то приложение будет спокойно работать с другим сервером, но возникла ситуация когда нужно различить с каким сервером работает программ и желательно знать IP.


Stanislav   (2005-02-02 16:46:00) [1]

Спасибо! буду разбираться.
В таблицы данных будет вносится не много. И скорее всего не параллельно.


Nikolay M.   (2005-02-02 16:39:00) [2]


> GetComputerName в самой расширенной х.п. ?

Конечно. Зачем жестко прописывать? Но это опять дополнительные ресурсы, если в таблицу валятся десятки или сотни записей в секунду, будут неплохие тормоза.


Nikolay M.   (2005-02-02 16:39:00) [3]


> GetComputerName в самой расширенной х.п. ?

Конечно. Зачем жестко прописывать? Но это опять дополнительные ресурсы, если в таблицу валятся десятки или сотни записей в секунду, будут неплохие тормоза.


Stanislav   (2005-02-02 16:34:00) [4]

И что, если на рабочем сервере и на тестовом вызвать GetComputerName результат будет одинаковым? Я имел ввиду если жестко прописать.

GetComputerName в самой расширенной х.п. ?


Nikolay M.   (2005-02-02 16:24:00) [5]


> Честно говоря еще думаю стоит ли. А что это может как-то
> помешать или просто лишний гемор ?

Это лишняя загрузка сетевого трафика + геморрой тебе.


> Передавай по UDP все, что угодно. Немогу.
> Дело в том что на одном сервере база рабочая на другом тренировочная
> и рабочая просто вливается на трен. сервер со всеми настройками.

И что, если на рабочем сервере и на тестовом вызвать GetComputerName результат будет одинаковым?


Stanislav   (2005-02-02 15:36:00) [6]

Передавай по UDP все, что угодно.Немогу.
Дело в том что на одном сервере база рабочая на другом тренировочная и рабочая просто вливается на трен. сервер со всеми настройками.
а на одном компьютере м.б. несколько инстансов...
Такого небудет.
А вообще, имхо, зря ты устраиваешь себе приключений на свою 5 точку с колбэками от сервера. Так ли уж нужно знать, что делают другие юзеры?
Честно говоря еще думаю стоит ли. А что это может как-то помешать или просто лишний гемор ?
Это я хочу всего сделать на 2-3 таблицах.


Nikolay M.   (2005-02-02 14:51:00) [7]

Передавай по UDP все, что угодно, в т.ч. можно и имя сервера (только что под этим подразумевается? имя инстанса? или имя компьютера в сети? а на одном компьютере м.б. несколько инстансов...).
А вообще, имхо, зря ты устраиваешь себе приключений на свою 5 точку с колбэками от сервера. Так ли уж нужно знать, что делают другие юзеры?


Stanislav   (2005-02-02 14:32:00) [8]

Nikolay M. ©   (01.02.05 16:58) [3]
Может и подойдет.
Я вобщем что делаю. Обратная связь с сервером, т.е. на добавление записи в таблицу в триггере выполняется х.п., которая отправляет сообщение по IDUDPClient. А приложение его обрабатывает, но Приложение будет обрабатывать как от одного сервера, так и от другого, поэтому нужно знать с каким именно сервером работаем, от того сервера и обрабатывать сообщение.
В IDUDPSERVER я могу узнать IP откуда пришло сообщение.
Вот теперь нужно узнать IP адрес сервера. Либо вытащить наименование машины через IP.


Nikolay M.   (2005-02-01 16:58:00) [9]


> exec master..xp_cmdshell 'ipconfig'

А как быть с правами юзеров? По умолчанию выполнять эту ХР можно только админам.
Не пойму только, почему имя сервера из текста UDL не подходит...


Stanislav   (2005-02-01 16:45:00) [10]

Спасибо !


sniknik   (2005-02-01 15:54:00) [11]

IP можно узнать и без ADO, по имени сервера (зачем извращения?).
лучше уж подключатся адресно, к тому что необходимо(из удл-ки прочитай), а не потом пытатся узнать "а с каким сервером работаем?".

но если очень хочется... ;) попробуй

exec master..xp_cmdshell 'ipconfig'
ищи, там будет строчка с "IP-адрес  ...." это и будет адрес сервера.


Наверх

Титульная страница Поиск, карта сайта Написать письмо