Exception bei gdi+ dll
-
Hallo, ich hab ein Problem mit GDI+. Nachdem ich GDI+ schon in einem anderen Projekt verwendet habe dachte ich mir das kann ja kein Problem sein das gleiche nochmal zu machen, denkste. Zu meinem Problem: Ich hab eine .lib und eine .dll in meinem Projektordner und das ganze eingebunden. Der Code den ich verwende ist aus dem vorigen Projekt, sollte also funktionieren. Ich vermute, dass ich irgendeine Einstellung vergessen habe. Der Fehler tritt bei der Funktion GetImageEncodersSize auf, die wiederum in der Datei GdiplusImageCodec.h das unten stehende Kommando aufruft. Was ist hier das Problem, habe ich eine falsche Dll? Ach ja, das ganze wirft eine access violation exception in der datei ntdll.dll aus.
... using namespace Gdiplus; UINT num = 0; // number of image encoders UINT size = 0; // size of the image encoder array in bytes ImageCodecInfo* pImageCodecInfo = NULL; GetImageEncodersSize(&num, &size); ... // Aufruf in der Datei GdiplusImageCodec.h inline Status GetImageEncodersSize( OUT UINT *numEncoders, OUT UINT *size) { return DllExports::GdipGetImageEncodersSize(numEncoders, size); }
-
das problem hat sich erledigt, ich hab vergessen GDI+ zu initialisieren mit
GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL);