Процесс не может получить доступ к файлу, так как файл используется другим процессом

140
29 октября 2019, 06:10

Все было бы просто и понятно, если бы нужно было "просто" применить using либо "просто" вызвать file.Close() или что то в этом духе. Я теряюсь в догадках, использовал и FileStream вместо WriteAllBytes, все без толку. В комментариях вы можете увидеть мои муки творчества. Используется библиотека TemplateEngine, которая использует библиотеку OpenXmlPackage. Хотя врятли проблема в них? Кстати, разумеется, все процессы, которые могут использовать doc закрыты. Вообще, файл использует текущий процесс.

try
    {
        //if (File.Exists(inputFilePath))
        //{
        //    File.SetAttributes(inputFilePath, FileAttributes.Normal);
        //    File.Delete(inputFilePath);
        //}
        var bytes = GetFileByTemplateName(templateName);
        using (FileStream stream = new FileStream(inputFilePath, FileMode.Create, FileAccess.Write, FileShare.Read))
        {
            stream.Write(bytes, 0, bytes.Length);
            stream.Close();
        }
        //File.WriteAllBytes(inputFilePath, bytes);
        //File.Copy(inputFilePath, outputFilePath);
        //File.SetAttributes(outputFilePath, FileAttributes.Normal);
    }
    catch (Exception e)
    {
    }
    var valuesToFill = GetContent(query, queryType, entity, type);
    try
    {
        //ЗДЕСЬ КРАШИТСЯ! В КОНСТРУКТОРЕ!
        using (var outputDocument = new TemplateProcessor(inputFilePath).SetNoticeAboutErrors(false).SetRemoveContentControls(true))
        {
            outputDocument.FillContent(valuesToFill);
            outputDocument.SaveChanges();
        }
    }
    catch (Exception e)
    {
    }
READ ALSO
Как автоматически присвоить полю его же имя?

Как автоматически присвоить полю его же имя?

К name2 автоматически присвоить значение его же имени, без указания имени в строке

109
Сохранение данных textbox и Image

Сохранение данных textbox и Image

У меня есть 3 textbox(c внесенными данными),1 картинка которая загружается пользователем,1 Listbox в котором нужно выбрать вариант ответаКак и куда...

126
NAUDIO конвертация wav byte[] в mp3 byte[]

NAUDIO конвертация wav byte[] в mp3 byte[]

Уже перепробовал куча вариантовМне по сети приходят байты WaveIn с голосом и передаются в эту функцию:

119