सी # का उपयोग करके, मैं डिस्क से एक जेपीईजी फ़ाइल लोड करने और इसे बाइट सरणी में बदलने की कोशिश कर रहा हूं।एक जेपीईजी छवि को बाइट सरणी में परिवर्तित करना - COM अपवाद
COMException बिना क्रिया था:
static void Main(string[] args) { System.Windows.Media.Imaging.BitmapFrame bitmapFrame; using (var fs = new System.IO.FileStream(@"C:\Lenna.jpg", FileMode.Open)) { bitmapFrame = BitmapFrame.Create(fs); } System.Windows.Media.Imaging.BitmapEncoder encoder = new System.Windows.Media.Imaging.JpegBitmapEncoder(); encoder.Frames.Add(bitmapFrame); byte[] myBytes; using (var memoryStream = new System.IO.MemoryStream()) { encoder.Save(memoryStream); // Line ARGH // mission accomplished if myBytes is populated myBytes = memoryStream.ToArray(); } }
हालांकि, क्रियान्वित लाइन
ARGH
मुझे संदेश देता है: अब तक, मैं इस कोड है। हैंडल अमान्य है। ( HRESULT से अपवाद: 0x80070006 (E_HANDLE))
मुझे नहीं लगता कि कुछ भी फ़ाइल Lenna.jpg
के बारे में विशेष है - मैं http://computervision.wikia.com/wiki/File:Lenna.jpg से डाउनलोड। क्या आप बता सकते हैं कि उपर्युक्त कोड में क्या गलत है?