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

Вниз

файлы   Найти похожие ветки 

 
картман ©   (2011-11-14 15:22) [0]

есть сервис:
мониторит каталог и как в нем появляется файл, что-то там с ним делает. Файл сообщений:
<messages>
 <mess>
   <id>идентификатор</id>
   <>текст<>
 </mess>
<messages>
 К каждому тексту могут быть отдельно добавлена директория (имя каталога = идентификатор текста) с доп. инф.(эта информация тоже подвергается обработке) В файле сообщений никак не указывается, что есть доп. инфа. Файл(с доп. файлами) выкладывается одним копированием.
 Вопрос: как сделать так, чтоб не потерять доп. инфу?


 
Jeer ©   (2011-11-14 15:27) [1]

Еще раз и внятнее.


 
clickmaker ©   (2011-11-14 15:28) [2]

> имя каталога = идентификатор текста

т.е. <id>c:\somedir</id>?


 
KSergey ©   (2011-11-14 15:28) [3]

> Вопрос: как сделать так, чтоб не потерять доп. инфу?

Предлагаю:
1) указать;
2) не терять.


 
картман ©   (2011-11-14 15:46) [4]


> Jeer ©   (14.11.11 15:27) [1]


в папку d:\MyDir кладется файл MyDoc.xml:

<messages>
<mess>
  <id>123</id>
  <>текст<>
</mess>
<messages>

и - необязательно - дополнительные файлы, относящиеся к какому-нибудь сообщению из MyDoc:

d:\MyDir\<id>\file_list

я мониторю MyDir на предмет изменений ReadDirectoryChangesW - как появляется файл, и как он становится доступен для чтения, так  обрабатываю. Вот как мне гарантированно не упустить приложения к текстам, которые могут быть в папках с именем идентификатор_текста? Дополнения в папка_идентификатор_текста кладутся примерно в одно время(за одно копирование - руками) и начинать обработку надо как можно быстрее.


 
clickmaker ©   (2011-11-14 15:55) [5]

а где живут папки с именем идентификатор_текста? в d:\mydir?
ReadDirectoryChangesW  bWatchSubtree = true?


 
картман ©   (2011-11-14 17:00) [6]


> d:\mydir?

да


>  bWatchSubtree = true?

это понятно, я про другое: я ж не знаю, что они будут вообще, стал быть надо сколько-то ждать их появления, но сколько? Ладно, наверное единственно верное решение, это попросить "выкладывателя" делать пометки, есть ли дополнения и сколько в них файлов.


 
Jeer ©   (2011-11-14 17:02) [7]

Исключить ручной труд и обрабатывать скриптами.


 
Компромисс   (2011-11-14 17:03) [8]


> Ладно, наверное единственно верное решение, это попросить
> "выкладывателя" делать пометки, есть ли дополнения и сколько
> в них файлов.


Либо ждать N минут. Но при этом "выкладыватель" может забыть скопировать остальные файлы


 
картман ©   (2011-11-14 17:27) [9]


> Исключить ручной труд

нельзя, увы, - комп, на который выкладывают файл, доступа к внешней сети(откуда данные приходят) не имеет(и не будет)


> Компромисс   (14.11.11 17:03) [8]


> Либо ждать N минут. Но при этом "выкладыватель" может забыть
> скопировать остальные файлы

или скопирует их в (N+1) минут.


 
Медвежонок Пятачок ©   (2011-11-14 17:30) [10]

комп, на который выкладывают файл, доступа к внешней сети(откуда данные приходят) не имеет(и не будет)

я один не понял как это?

Файлы на комп приходят оттуда, куда этот комп не имеет доступа.


 
картман ©   (2011-11-14 17:35) [11]


> Медвежонок Пятачок ©   (14.11.11 17:30) [10]

прошу прощения.

Комп(А) - сеть(а)
Комп(Б) - сеть(б)
Исходные данные приходят на Комп(а), обрабатывать надо в сети б.
связь между сетями а и б организована по протоколу "пусть админ на флешке перетаскивает, все равно ничего не делает"


 
Медвежонок Пятачок ©   (2011-11-14 17:37) [12]

ну так запузырь ему на флешку свой project1.exe


 
clickmaker ©   (2011-11-14 17:38) [13]

> пусть админ на флешке перетаскивает, все равно ничего не
> делает

так пусть он и доп. инфу указывает, раз все равно ничего не делает


 
Компромисс   (2011-11-14 17:41) [14]


> или скопирует их в (N+1) минут.
>


Поэтому нужно знать N. Если точно неизвестно, сколько максимум надо ждать, то задача решения не имеет. Может, через 5 лет дополнительные файлы появятся, и поэтому надо ждать 5 лет. А если не появятся, то нарушится требования "начинать обработку надо как можно быстрее".


 
Компромисс   (2011-11-14 17:44) [15]


> ну так запузырь ему на флешку свой project1.exe


+1.

Очень странно, когда пишут Windows сервис для задачи, которая выполняется один раз в день. Пусть админ запускает bat файл, который и данные скопирует, и программу запустит. Причем, не надо появлений новых файлов ожидать, лучше command line параметры использовать.


 
OW ©   (2011-11-14 17:51) [16]

Как вариант, заставить/организовать сначала копирование доп.файлов
а потом хмл


 
картман ©   (2011-11-14 18:11) [17]


> Как вариант, заставить/организовать сначала копирование
> доп.файлов

перепутает ведь


> clickmaker ©   (14.11.11 17:38) [13]

да, пожалуй


 
Игорь Шевченко ©   (2011-11-14 20:45) [18]

архивировать и передавать архив


 
картман ©   (2011-11-14 21:05) [19]


> архивировать и передавать архив

Конечно! Спасибо.



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

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

Наверх




Память: 0.51 MB
Время: 0.013 c
3-1271337869
Андрей Пл
2010-04-15 17:24
2012.03.04
компонент ComboBoх с отфильтрованным выпадающим списком


2-1322472936
jacksotnik
2011-11-28 13:35
2012.03.04
Как показать картинку с Blob поля


15-1321301277
alexdn
2011-11-15 00:07
2012.03.04
делфи и мак ос


4-1254841791
intlex
2009-10-06 19:09
2012.03.04
как определить владельца мьютекса (mutex owner)


15-1321010130
SQLEX
2011-11-11 15:15
2012.03.04
Просьба подсказать по java