Разрабатываю приложение, которое участвует в цепочке перемещения файлов. То есть: как только в папке 1 появляется файл, мое приложение его считывает оттуда, записывает в папку 2 (сетевую), и из папки 2 его сразу забирает другое приложение. В данный момент копирование файлов реализовано следующим способом:
byte[] byteArray = File.ReadAllBytes(sourceFile);
File.WriteAllBytes(targetFile, byteArray);
Мне необходимо добавить расчет хеша файла до копирования (в папке 1) и после копирования (в папке 2) чтобы определять, не повредился ли файл в процессе копирования. Проблема в том, что как только мое приложение записывает файл в папку 2, его сразу же оттуда забирает (перемещает) другое приложение, и я не успеваю прочитать файл для расчета его хеша. Изменить логику этого другого приложения нельзя.
Мне необходимо выполнить следующее: сразу после копирования каким-то образом "занять" файл в папке 2, чтобы успеть считать его оттуда и рассчитать его хеш, после чего "отпустить" его. Прошу подсказать, каким образом это можно сделать?
чисто в теории кода:
FileStream s2 = new FileStream(name, FileMode.Open, FileAccess.Read, FileShare.None);
должно быть достаточно что бы залочить файл.
Еще гуглится вот такой вот ответ интересный: https://stackoverflow.com/a/5522256/4423545
возможно, тебе будет полезен так же.
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Виртуальный выделенный сервер (VDS) становится отличным выбором
По какой-то причине хук обрабатывается, но ничего не происходит, приложение просто напросто закрывается без каких-либо ошибок
Подскажите, пожалуйста, существует ли под Windows 10 бесплатная библиотека для C# WinForms для отображения Ribbon интерфейса?
Сделал 2 анимации TreeDanceanim и Fall
Всем привет, у меня сейчас игра на eng языке хочу добавить ru языкПодскажите хороший способ локализации игрового меню