BITMAPFILEHEADER
-
Hallo,
ich habe ein Problem mit der im Topic genannten Struktur.
Die Typendefinition laut MSDN:
typedef struct tagBITMAPFILEHEADER {
WORD bfType;
DWORD bfSize;
WORD bfReserved1;
WORD bfReserved2;
DWORD bfOffBits;
} BITMAPFILEHEADER, *PBITMAPFILEHEADER;Das bedeutet meinem Verständniss nach eine Grösse von 14 Byte.
Wenn ich nur aber mit "sizeof" versuche, die Grösse zu ermitteln, ist diese 16 Bytes.
Ich arbeite mit dem Borland C++ Builder 6. Ist es möglich, daß ich irgendeine Option falsch gesetzt habe? Ansonsten kann ich mir dieses Verhalten nicht erklären.
mfg
-
mach vor die struct ein '#pragma pack(1)' und dann versuch's nochmal...
-
Hi,
erstmal danke für die schnelle Antwort.
Mein Problem ist, daß ich die Strutur nicht selber definiere, sondern die aus der Wingdi.h verwenden muss.
Ich würde ungerne Änderungen dort drin machen.
Gibt es evtl. noch eine Möglichkeit?mfg
-
Ich weiß nicht, welche Optionen Du verwendest, aber bei einem neuen Projekt, mit Standardwerten (= pack(8)) wird die Größe korrekt mit 14 Bytes angegeben.
-
tinytoon schrieb:
Mein Problem ist, daß ich die Strutur nicht selber definiere, sondern die aus der Wingdi.h verwenden muss.
Ich würde ungerne Änderungen dort drin machen.es reicht vor dem '#include <wingdi.h>. du musst die wingdi.h nicht verändern
-
Ahh, super.
Problem gelöst.
Ich danke Euch:)
mfg