diff --git a/Source/capture.cpp b/Source/capture.cpp index 56369c3b1..88f616519 100644 --- a/Source/capture.cpp +++ b/Source/capture.cpp @@ -43,19 +43,19 @@ void CaptureScreen() BOOL CaptureHdr(HANDLE hFile, short width, short height) { DWORD lpNumBytes; - PCXHeader Buffer; + PCXHEADER Buffer; memset(&Buffer, 0, sizeof(Buffer)); - Buffer.manufacturer = 10; - Buffer.version = 5; - Buffer.encoding = 1; - Buffer.bitsPerPixel = 8; - Buffer.xmax = width - 1; - Buffer.ymax = height - 1; - Buffer.horzRes = width; - Buffer.vertRes = height; - Buffer.numColorPlanes = 1; - Buffer.bytesPerScanLine = width; + Buffer.Manufacturer = 10; + Buffer.Version = 5; + Buffer.Encoding = 1; + Buffer.BitsPerPixel = 8; + Buffer.Xmax = width - 1; + Buffer.Ymax = height - 1; + Buffer.HDpi = width; + Buffer.VDpi = height; + Buffer.NPlanes = 1; + Buffer.BytesPerLine = width; return WriteFile(hFile, &Buffer, sizeof(Buffer), &lpNumBytes, NULL) && lpNumBytes == sizeof(Buffer); } diff --git a/structs.h b/structs.h index c0f5a77d6..6c9481d6d 100644 --- a/structs.h +++ b/structs.h @@ -1552,22 +1552,26 @@ typedef struct _plrmsg { // capture ////////////////////////////////////////////////// -typedef struct PCXHeader { - char manufacturer; - char version; - char encoding; - char bitsPerPixel; - short xmin, ymin; - short xmax, ymax; - short horzRes, vertRes; - char palette[48]; - char reserved; - char numColorPlanes; - short bytesPerScanLine; - short paletteType; - short horzSize, vertSize; - char padding[54]; -} PCXHeader; +typedef struct _PcxHeader { + BYTE Manufacturer; + BYTE Version; + BYTE Encoding; + BYTE BitsPerPixel; + WORD Xmin; + WORD Ymin; + WORD Xmax; + WORD Ymax; + WORD HDpi; + WORD VDpi; + BYTE Colormap[48]; + BYTE Reserved; + BYTE NPlanes; + WORD BytesPerLine; + WORD PaletteInfo; + WORD HscreenSize; + WORD VscreenSize; + BYTE Filler[54]; +} PCXHEADER; ////////////////////////////////////////////////// // encrypt