Mam aplikacji .NET 2.0, który działa dobrze na XP i Vista, ale na Windows 7 RC (x64) ulega awarii z powodu następującego błędu:Windows 7 TextureBrush..ctor() Błąd
Exception Informacje
Wyjątek Typ: System.OutOfMemoryException Wiadomość: Out of memory. Dane: System.Collections.ListDictionaryInternal TargetSite: Void .ctor (System.Drawing.Image, System.Drawing.Drawing2D.WrapMode) HelpLink: NULL Źródło: System.Drawing
StackTrace Informacja
w System.Drawing.TextureBrush..ctor (Obraz obrazu, WrapMode wrapMode) w System.Windows.Forms.ControlPaint.DrawBackgroundImage (Grafika g, Obraz tła, Kolor tła, ImageLayout backgroundImageLayout, Obramowanie prostokątów, Rectangle clipRect, Punkt scrollOffset , RightToLeft rightToLeft) w System.Windows.Forms.Control.PaintBackground (PaintEventArgs e, prostokąt prostokąta, Color backColor, Point scrollOffset) w System.Windows.Forms.Control.PaintBackground (PaintEventArgs e, Prostokąt prostokąt) w System.Windows.Forms. Control.OnPaintBackground (PaintEventArgs pevent) w System.Windows.Forms.ScrollableControl.OnPaintBackground (PaintEventArgs e) w System.Windows.Forms.Control.PaintWithErrorHandling (PaintEventArgs e warstwa Int16, logiczne disposeEventArgs) w System.Windows.Forms .Control.WmPaint (Message & m) w System.Windows.Forms.Control.WndProc (Message & m) w System.Windows.Forms.ScrollableControl.WndProc (Message & m)
Jakieś pomysły na temat tego, dlaczego tak się dzieje lub w jaki sposób mogę go programować? To tylko malowanie standardowej winoteki bez specjalnego tła.
AKTUALIZACJA: Odkryłem, że jest to problem tylko wtedy, gdy BackgroundImageLayout = ImageLayout.Tile, który jest również domyślny. Ustaw go na Powiększ lub Wyśrodkuj, a problem zniknie. To całkiem niezadowalające, ponieważ potrzebuję go do wyłożenia.
Czy działa poprawnie na XP i Vista ** 64-bit **? –
Tak, działa dobrze zarówno w 32-, jak i 64-bitowych wersjach XP i Vista. –
Dzięki (był to strzał w ciemno, ostatnio miałam podobne kłopoty związane z problemami z krzyżem). Przepraszam, brak pomysłów. –