Перезапись файла C#

cherus09

Client
Регистрация
10.10.2016
Сообщения
172
Благодарностей
14
Баллы
18
Привет, подскажите как в c# перезаписать файл с тем же именем после манипуляций над ним.
При таком раскладе пишет что не возможно открыть изображение. Ошибка вылетает при попытке перезаписать файл.
Вот мой код:

string ImagePath = project.Variables["image_file_dlya_obrabotki"].Value;
using (MagickImage image = new MagickImage(ImagePath)){
image.UnsharpMask(1, 3);
image.Write(ImagePath);
}
 

cherus09

Client
Регистрация
10.10.2016
Сообщения
172
Благодарностей
14
Баллы
18
Никто так и не поможет в моем вопросе:(
 

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 712
Баллы
113
попробуй без using , MagickImage image = new MagickImage(ImagePath) ;
затем перекинь в другой объект MagickImage image_temp = image ;
а старый удали из памяти. не стоит у меня MagickImage , примерно так image.Dispose();
и работай с image_temp
 

cherus09

Client
Регистрация
10.10.2016
Сообщения
172
Благодарностей
14
Баллы
18
попробуй без using , MagickImage image = new MagickImage(ImagePath) ;
затем перекинь в другой объект MagickImage image_temp = image ;
а старый удали из памяти. не стоит у меня MagickImage , примерно так image.Dispose();
и работай с image_temp
Если честно не силен в c#, если не трудно можешь в моем коде прописать как надо
 

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 712
Баллы
113

cherus09

Client
Регистрация
10.10.2016
Сообщения
172
Благодарностей
14
Баллы
18
string ImagePath = project.Variables["image_file_dlya_obrabotki"].Value;
MagickImage image = new MagickImage(ImagePath);
MagickImage image_temp = image;
image_temp.UnsharpMask(1, 3);
image_temp.Write(ImagePath);
image.Dispose();

Сделал так, не работает
 

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 712
Баллы
113
string ImagePath = project.Variables["image_file_dlya_obrabotki"].Value;
MagickImage image = new MagickImage(ImagePath);
MagickImage image_temp = image;
image.Dispose();
image_temp.UnsharpMask(1, 3);
image_temp.Write(ImagePath);

а если так ? ругается на что ? скрин лога бы.
 

cherus09

Client
Регистрация
10.10.2016
Сообщения
172
Благодарностей
14
Баллы
18
string ImagePath = project.Variables["image_file_dlya_obrabotki"].Value;
MagickImage image = new MagickImage(ImagePath);
MagickImage image_temp = image;
image.Dispose();
image_temp.UnsharpMask(1, 3);
image_temp.Write(ImagePath);

а если так ? ругается на что ? скрин лога бы.
 

Вложения

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 712
Баллы
113
ну тут надо разбираться с этой библиотекой MagickImage .
вообще в примерах использованы разные пути для изображений
58385

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

cherus09

Client
Регистрация
10.10.2016
Сообщения
172
Благодарностей
14
Баллы
18
То есть сразу не получится перезаписать файл?
 

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 712
Баллы
113

cherus09

Client
Регистрация
10.10.2016
Сообщения
172
Благодарностей
14
Баллы
18

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)