Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.04.08;
Скачать: CL | DM;

Вниз

Нужна идея и решение... Есть LAN (Win NT) и два клиентских компьютера в сети (Win 9x)...   Найти похожие ветки 

 
Song ©   (2002-01-24 17:50) [0]

На обоих компьютерах стоит одна и таже программа (как раз та, которой и требуется помощь). Эта программа обрабатывает один и тот же файл на сервере. Допустим, один клиент измениил и записал файл, тогда второй клиент, при попытке записи запишет "старый" файл без изменений первого. Как решить проблему?
Идея: принцип динамического обновления. После записи любой клиент посылает сообщение по LAN всем остальным клиентам о необходимости обновления этого файла, и все остальные компьютеры перечитывают файл. Вопрос как её релизовать? И можно ли это сделать?
Ещё идеи?


 
Tosov ©   (2002-01-24 19:11) [1]

Забыл указать - у тебя есть исходники проги или нет?


 
Alex Y ©   (2002-01-25 05:09) [2]

Можно так сделать:
1. Если нужно просто узнать на сервере более поздняя версия, то просто проверяешь дату последнего обновления файла на сервере, сравниваешь с текущей в программе и, следовательно, делаешь выводы :)
2. Если нужно сразу после обновления оповестить все компы, здесь немного сложнее.
Для начала на сервере, или на каждой машине (в зависимости от реализации) создаешь список IP-адресов всех установленных тобой программ. Далее, после обновления файла, используя стандартный компонент Делфи связи по TCP/IP, поочереди по списку соединяешься с каждой машиной и отправляешь сообщение об изменении. Далее обновляешь файл.


 
_Tosov   (2002-01-25 07:16) [3]

2Alex Y
>и отправляешь сообщение об изменении...
А можно поподробнее об этом?


 
Alex Y ©   (2002-01-25 08:19) [4]

А чего тут подробней то? Обновил файл на сервере. Сформировал пакек со строкой типа "такой то комп., тогда то, дескать обновил и т.п.". И отправляешь его по IP на нужный адрес. А там, зная формат отправленой строки, разбираешь ее. Вот и все.


 
Song ©   (2002-01-25 10:33) [5]

Исходник само собой есть. Но чтобы не иметь списка, можно отправлять сообщение всем на адрес 1.1.1.* например?


 
Giga-Byte ©   (2002-01-25 11:58) [6]

А файлик то на сервере большой????? А ведь можно серверную программу написать, которая в памяти будет хранить все данные, и отсылать/принимать клиентам/от клиентов средствами Дельфи (TServerSocket и TClientSocket)


 
Alex Y ©   (2002-01-25 12:01) [7]

2 Song
Можно и так, только зачем тебе лишний трафик?
Да и безопасность нарушается.



Страницы: 1 вся ветка

Текущий архив: 2002.04.08;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.009 c
3-22514
ЕвгенийА
2002-03-12 00:46
2002.04.08
Люди, создаю дистрибутив... Использую базы данных типа Paradox и dbase.. На других компах прога не работает


7-22855
vlv
2002-01-14 15:00
2002.04.08
IDataObject


1-22670
NTDim
2002-03-28 14:38
2002.04.08
Вопрос ...


1-22707
PEC
2002-03-26 12:24
2002.04.08
Привет народ


1-22754
IronHawk
2002-03-27 11:01
2002.04.08
Приветствую Мастеров! Очень надо в StringGrid сделать так ....