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

Вниз

не считывает данные из сетевого файла   Найти похожие ветки 

 
user51   (2009-10-29 14:55) [0]

произвожу считываение файла из сетевого окружения
раз в секунду. Содержимое файла также меняется гдето раз в секунду.

if fileexists ("\\10.128.1.1\ping\ping.txt")  then
begin
assignfile(f,"\\10.128.1.1\ping\ping.txt");
reset(f);
       repeat
       readln(f,ff);
       until eof(f);
       closefile(f);
end

проблема в том что файл реально меняется
а программа считывает все время одно и тоже похоже из какогото виндового буфера. Если я тоталом открою файл
для просмотра то и программа сразу считает новое содержимое файла. как сделать чтоб считывалось реальное содержимое файла ?


 
ПостОвый терминатор ©   (2009-10-29 15:28) [1]

Каким образом узнаешь (проверяешь), что программа по таймеру считывает одну и ту же информацию?
"Сетевой" файл похоже не причем.
Для начала попробуй уменьшить частоту опроса


 
Anatoly Podgoretsky ©   (2009-10-29 15:39) [2]


> user51   (29.10.09 14:55)  

Врядли тоталом читает с помощью данных функций, попробуй считывать с помощью АПИ, тем более что код разместил в этом разделе, а код не соответствует тематике форума. Как промежуточный шаг попробуй считывать с помощью TFileStream. Но забудь про работу со строками, и АПИ и TFileStream это низкоуровневые процедуры, единица БАЙТ.

К тому же приведеный код вообще не подходит для межпрограммной работы.


 
user51   (2009-10-29 15:42) [3]

на линуксе создал расшаренную папку в ней ping.txt котрый постоянно меняется (под линуксом программа крутиться и пингует и результат сбрасывает в файл причем первая строчка это всрем  - поэтому легко поределить верно ли считыается или нет); Необходимо соединится их под ХП и пропарсить файл.

на моем компе - wmware (виртуальная машина LINUX с расшаренной папкой и файлом ping.txt) и эта прога. Все работает ОК.Считывается правильное содержимоое файла.

Беру эту прогу ставлю на комп под ХП  в этой сети есть настоящий линукс с расшаренной папкой и файлом ping.txt
Считывается толко первое значение. файл реально меняется. а считывается все равно старое значение. Беру в тотале нажимаю F3 на этом файле и сразу моя прога считыват новое значение.


 
user51   (2009-10-29 15:51) [4]

вопрос как заставить виндовс считать данные еще раз из файла на удаленном компьютере, а не из буфера в памяти того компьютера на котром запущена программа


 
Anatoly Podgoretsky ©   (2009-10-29 16:07) [5]

Ты ответы принципиально не читаешь.


 
user51   (2009-10-29 16:33) [6]

А ты не читаешь то что требуется сделать !!!
тотал делает что то при просмотре файла после чего виндовс
думает ага мой буфер устарел, надо обратно дать всем прогам считать из файла а не из буфра в памяти. И моя прога сразу же считывает новое правильное содержание файла.

КТО ЗНАЕТ КАК ЗАСТАВИТЬ ВИНДУ ДАВАТЬ СЧИТЫВАТЬ ДАННЫЕ ИЗ ФАЙЛА
а не из буфера ?


 
Сергей М. ©   (2009-10-29 17:23) [7]

Интересно, за каким лешим понадобилось кидать вывод консольной утилиты в файл, расшаривать его и потом на удаленном хосте пыжиться-ловить изменения в этом файле, вместо того чтобы перенаправить консольный вывод прямо на syslog-сервер на удаленном хосте ?


 
user51   (2009-10-29 17:44) [8]

просто файл уже есть и я хочу прочто его получить.

Сергей М. твой вариант можно тоже рассмотреть подскажи тогда как на линуксе переправить вывод на syslog-сервер и как сделать syslog-сервер под виндой. И действительно ли  это проще чем найти комманду (точно такую же которую использует тотал ) и запускать ее перед считыванием


 
Сергей М. ©   (2009-10-29 21:44) [9]


> user51   (29.10.09 17:44) [8]



> как на линуксе переправить вывод на syslog-сервер


Читай документацию.


> как сделать syslog-сервер под виндой


UDP, 514-й порт, текстовые сообщения.


 
Dennis I. Komarov (htc)   (2009-10-29 22:53) [10]

очередной x, y, z...
но тут дело не в syslog
тут, понимаешь, винад во всем виновата.


 
brother ©   (2009-10-30 04:28) [11]

> А ты не читаешь то что требуется сделать !!!

O_o это кому надо то? ты к советам прислушивайся ;)


 
brother ©   (2009-10-30 04:29) [12]

имхо, реализация вообще никакая...


 
user51   (2009-10-30 12:03) [13]

вобщем я все сделал - пару строчек добавил к коду.
А от ваших советов толку никакого - как впрочем и всегда. За всё время раза 4 спрашивал, то не знаете как сделать (в данном случае никто не знает как получить реальное содержимое файла) или вообще даете бесполезные советы которые я не могу использовать.

Интересно у кого нибудь мозгов хватит догадаться, что надо добавить  или что надо изменить чтоб приведенный выше код заработал ? или к моему ОФИГЕННО БОЛЬШОМУ УДИВЛЕНИЮ я окажусь самым умным из всех кто писал в этом посту.



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

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

Наверх




Память: 0.5 MB
Время: 0.012 c
2-1256817317
user51
2009-10-29 14:55
2009.12.20
не считывает данные из сетевого файла


1-1228947824
angvelem
2008-12-11 01:23
2009.12.20
C to pascal


1-1229515633
dima47
2008-12-17 15:07
2009.12.20
Защита дискет от копирования


2-1256708612
Dim!S
2009-10-28 08:43
2009.12.20
Удаление большого количества записей firebird 1.5


1-1229431109
Zilog
2008-12-16 15:38
2009.12.20
Как закрыть не своё диалоговое окно?