Фоновый сервис, который проверяет изменения в файле - PullRequest
0 голосов
/ 10 августа 2011

Я не делал такого кодирования и хотел бы получить несколько советов, как начать. Служба в конечном итоге сделает несколько вещей, и, возможно, кто-то уже думал об этом, чтобы это произошло.

Общая картина такова: определите, была ли презентация PowerPoint обновлена ​​на сервере. Если он извлекает слайды и сохраняет их как отдельные JPEG-файлы, загрузите их в определенный список изображений в SharePoint. Все это должно происходить без вмешательства человека.

Я предполагаю, что это будет проект службы окон, верно? Тогда свойство потока файла, которое с некоторым свойством, которое имеет дело с изменениями в файле?

Что касается разбора файлов .pptx / .ppsx и конвертирования слайдов, то это "api" или какой-то класс dll?

А как насчет автоматической загрузки файлов в список библиотек в SharePoint?

Спасибо

Risho

Ответы [ 2 ]

0 голосов
/ 10 августа 2011

В SharePoint есть так называемая служба таймера для подобных ситуаций.Эндрю Коннелл имеет статью о создании ваших собственных заданий таймера.

http://www.andrewconnell.com/blog/archive/2007/01/10/5704.aspx

0 голосов
/ 10 августа 2011

Я сделал это в Topshelf http://topshelf -project.com / , хосте службы Windows для .NET.

https://github.com/Topshelf/Topshelf/blob/master/src/Topshelf/FileSystem/FileSystemEventProducer.cs

Поскольку Windows имеет проблему с помпой событий, если события занимают слишком много времени, мы также реализовали опрос поверх этого, так как FileSystemWatcher отключается в это время.

https://github.com/Topshelf/Topshelf/blob/master/src/Topshelf/FileSystem/PollingFileSystemEventProducer.cs

Теперь эти производители должны быть привязаны к актерам, поэтому они могут показаться слишком сложными для простой проверки событий файловой системы.Можно использовать, если эта модель полезна или только основная часть.Помните, что вы часто можете получать события, даже если файл заблокирован или еще не завершен, поэтому обработайте эти исключения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...