Добрый день, Aleksey1555.
Как-то запутано у Вас вышло. Вам надо освобождать только изображения, которые Вы получили, т.е., например:
или
Если Вы их не будите извлекать, то и освобождать их не надо.
Все остальное само освободится в нужный момент времени.
Экземляр Twain32 не разрушается при вызове CloseDSM. Он разрушается при вызове Dispose и последующей сборке мусора.
Как-то запутано у Вас вышло. Вам надо освобождать только изображения, которые Вы получили, т.е., например:
privatevoid _twain32_EndXfer(object sender,Twain32.EndXferEventArgs e) { try { using(var _image = e.Image) { _image.Save("filename.tif",ImageFormat.Tiff); } } catch(Exception ex) { MessageBox.Show(ex.Message,ex.GetType().Name,MessageBoxButtons.OK,MessageBoxIcon.Error); } }
privatevoid _twain32_AcquireCompleted(object sender,EventArgs e) { try { for(int i=0; i<this._twain32.ImageCount; i++) { using(var _image=this._twain32.GetImage(i)){ _image.Save(Path.GetTempFileName()); } } } catch(Exception ex) { MessageBox.Show(ex.Message,ex.GetType().Name,MessageBoxButtons.OK,MessageBoxIcon.Error); } }
Все остальное само освободится в нужный момент времени.
Экземляр Twain32 не разрушается при вызове CloseDSM. Он разрушается при вызове Dispose и последующей сборке мусора.