Kiedy używam MemoryStream
do załadowania Cursor
z pliku zasobów, otrzymuję ArgumentException
. Oto kod, którego używam do ładowania kursora:Podczas odczytywania kursora z pliku zasobów wywoływany jest wyjątek ArgumentException.
Cursor myCursor
= new Cursor(new MemoryStream(WaterforMGC.Properties.Resources.waterspray));
Cursor = myCursor;
Ale pojawia się błąd. Nie mam pojęcia, co jest nie tak, zmieniłem nawet Cursor = myCursor;
na this.Cursor = myCursor;
, co dało mi ten sam błąd. Próbowałem gameform.Cursor = myCursor;
, ale to w ogóle nie działało.
System.ArgumentException: Image format is not valid. The image file may be corrupted. Parameter name: stream ---> System.Runtime.InteropServices.COMException (0x800A01E1): Exception from HRESULT: 0x800A01E1 (CTL_E_INVALIDPICTURE) at System.Windows.Forms.UnsafeNativeMethods.IPersistStream.Load(IStream pstm) at System.Windows.Forms.Cursor.LoadPicture(IStream stream) --- End of inner exception stack trace --- at System.Windows.Forms.Cursor.LoadPicture(IStream stream) at WaterforMGC.gameform.Form1_Load(Object sender, EventArgs e) in C:\Users\Jan\Documents\Visual Studio 2008\Projects\WaterforMGC\WaterforMGC\Form1.cs:line 39 at System.Windows.Forms.Form.OnLoad(EventArgs e) at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible) at System.Windows.Forms.Control.CreateControl() at System.Windows.Forms.Control.WmShowWindow(Message& m) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Jakiego formatu zdjęć jest twój obraz? –
komunikaty o wyjątkach są do przeczytania ... Oczywiście tego nie zrobiliście, ponieważ zmieniliście rzeczy w linii po tym, który spowodował wyjątek, aby naprawić błąd ... –
@Dan: Wątpię, że wiedział co szukał w tej gigantycznej ścianie wyjątkowego tekstu. Załatałem to, mam nadzieję, że to pomoże. – user7116