У меня есть программа, которая в свою очередь обращается к DLL.Он использует файлы различными способами, создавая их, копируя и устанавливая их как вложения в объект emailMessage.У меня ошибка «файл используется», предотвращающий перезапись файла.
Существует ли какой-либо инструмент или метод для облегчения процесса - например, какое-то предупреждение о создании / удалении ручек, содержащих определенную строку?Я посмотрел на Process Explorer, Process Monitor (преемник filemon) и т. Д., Но не повезло.
Я могу продолжать охоту, но подумал, что может быть лучший подход, чем продолжение моих неформальных исследований с помощью кода.
РЕДАКТИРОВАТЬ
Спасибо за комментарии.Что касается вопросов, структура немного сложна.У меня есть мое «клиентское» приложение, которое ссылается на dll «Engine» (также в C #).Оба мои.Клиент создает экземпляры «вложений», каждое из которых содержит ссылку на файл для различных файлов.Конструктор этого захватывает указанный файл и помещает копию во временную папку.Позже, набор «действий» создает электронную почту - он добавляет каждое вложение как «реальное» вложение к объекту EmailMessage.В разное время я избавляюсь от объектов и устанавливаю их ссылки на null, но если я делаю это слишком рано, я получаю исключения с нулевыми ссылками.Если я сделаю это слишком поздно, чертовы вещи будут в использовании!Я уверен, что смогу выследить эту конкретную ошибку в свое время, но это заставило меня задуматься, есть ли полезный стандартный метод, используемый теми, кто в курсе.:)