Status ObjectBusy bei GDI+-Image-Objekt

Hallo!

Ich habe über 15 Jahre Erfahrung mit OOP, aber wenig mit GDI+; seit Mitte Dezember habe ich ein GDI±Projekt, wo mir aber neuerdings ein Kollege hilft: Er hat mir eine Sprite-Klasse zur Verfügung gestellt, die fast alles mit GDI+ beinhaltet, was ich brauche. Ich würde mich bzgl. dieser Microsoft-Bibliothek als leicht fortgeschritten bezeichnen.

DAS PROBLEM:
Ich habe folgenden Kode, wo ich für ein GDI+ Image-Objekt den Status ObjectBusy bekomme (siehe 0);

// NOTICE: Ship IDs start from 0, ship model IDs from 1!
for(short nShipId = 0; nShipId nINDEX);
const Wallpaper &wallpaper = GetWallpapers()[nINDEX];
assert(wallpaper.IsMovingPathsImageLoaded());
return GetWallpapers()[nINDEX];
}

bool Wallpaper::IsMovingPathsImageLoaded() const
{
const Status STATUS = (*m_pimgMovingPathsImage).GetLastStatus();
return (m_pimgMovingPathsImage != NULL && (*m_pimgMovingPathsImage).GetHeight()*(*m_pimgMovingPathsImage).GetWidth() > 0);
}

Im netten Internet habe ich herausgefunden, dass dies durch Threads passieren könne. Ich verwende aber selbst keine Threads. Es muss also einen anderen Grund geben.

Ich habe mit diesem Status ein Problem, weil ich ab diesem Zustand nicht mehr auf das Bild zugreifen kann. Die Methode IsMovingPathsImageLoaded() kommt nicht weit, weil es schon die Höhe des Bildes nicht mehr eruieren kann.

Vielen Dank für eure Hilfe!

Hiho,

bitte diese Frage nochmals anderen Stellen.
Bin mit GDI überhaupt nicht firm…

Gruß,
H.

Habe mit GDI+ keine Erfahrung…