![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Нужна идея и решение... Есть LAN (Win NT) и два клиентских компьютера в сети (Win 9x)... [D6, Win95/98, WinXP]
Song © (2002-01-24 17:50:00)На обоих компьютерах стоит одна и таже программа (как раз та, которой и требуется помощь). Эта программа обрабатывает один и тот же файл на сервере. Допустим, один клиент измениил и записал файл, тогда второй клиент, при попытке записи запишет "старый" файл без изменений первого. Как решить проблему?
Идея: принцип динамического обновления. После записи любой клиент посылает сообщение по LAN всем остальным клиентам о необходимости обновления этого файла, и все остальные компьютеры перечитывают файл. Вопрос как её релизовать? И можно ли это сделать?
Ещё идеи?
Alex Y (2002-01-25 12:01:00) [1]2 Song
Можно и так, только зачем тебе лишний трафик?
Да и безопасность нарушается.
Giga-Byte (2002-01-25 11:58:00) [2]А файлик то на сервере большой?????А ведь можно серверную программу написать, которая в памяти будет хранить все данные, и отсылать/принимать клиентам/от клиентов средствами Дельфи (TServerSocket и TClientSocket)
Song (2002-01-25 10:33:00) [3]Исходник само собой есть. Но чтобы не иметь списка, можно отправлять сообщение всем на адрес 1.1.1.* например?
Alex Y (2002-01-25 08:19:00) [4]А чего тут подробней то? Обновил файл на сервере. Сформировал пакек со строкой типа "такой то комп., тогда то, дескать обновил и т.п.". И отправляешь его по IP на нужный адрес. А там, зная формат отправленой строки, разбираешь ее. Вот и все.
_Tosov (2002-01-25 07:16:00) [5]2Alex Y
>и отправляешь сообщение об изменении...
А можно поподробнее об этом?
Alex Y (2002-01-25 05:09:00) [6]Можно так сделать:
1. Если нужно просто узнать на сервере более поздняя версия, то просто проверяешь дату последнего обновления файла на сервере, сравниваешь с текущей в программе и, следовательно, делаешь выводы :)
2. Если нужно сразу после обновления оповестить все компы, здесь немного сложнее.
Для начала на сервере, или на каждой машине (в зависимости от реализации) создаешь список IP-адресов всех установленных тобой программ. Далее, после обновления файла, используя стандартный компонент Делфи связи по TCP/IP, поочереди по списку соединяешься с каждой машиной и отправляешь сообщение об изменении. Далее обновляешь файл.
Tosov (2002-01-24 19:11:00) [7]Забыл указать - у тебя есть исходники проги или нет?