www.pudn.com > ccc22.rar > openfile.h
#include "stdafx.h" #includeBYTE * OpenBMP(CString fileName,long *width,long *height) { BYTE * pData; *width = 0; *height = 0; if(fileName=="") return NULL; BITMAPINFO bmpInfo; BITMAPFILEHEADER bmpFileHead; CFile file; if((file.Open(fileName,CFile::modeRead|CFile::shareDenyNone))==NULL) { AfxMessageBox("Can not open the file"); return NULL; } file.Read(&bmpFileHead,sizeof(BITMAPFILEHEADER)); file.Read(&bmpInfo,sizeof(BITMAPINFOHEADER)); *width = bmpInfo.bmiHeader.biWidth; *height = bmpInfo.bmiHeader.biHeight; long lFileSize = bmpFileHead.bfSize - bmpFileHead.bfOffBits; pData = (BYTE*)new char[lFileSize]; if(!pData) return NULL; file.ReadHuge(pData,lFileSize); file.Close(); return pData; } BYTE * OpenRAW(CString fileName,long *width,long *height) { BYTE * pData; if(fileName=="") return FALSE; *width = 352; *height = 240; long lFileSize = (*width) * (*height); pData = (BYTE*)new char[lFileSize]; CFile file; if((file.Open(fileName,CFile::modeRead|CFile::shareDenyNone))==NULL) { AfxMessageBox("Can not open the file"); return NULL; } if(!pData) return NULL; file.ReadHuge(pData,lFileSize); file.Close(); return pData; } BYTE * OpenGRAY(CString fileName,long *width,long *height) { BYTE * pData; if(fileName=="") return FALSE; *width = 360; *height = 288; long lFileSize = (*width) * (*height); pData = (BYTE*)new char[lFileSize]; CFile file; if((file.Open(fileName,CFile::modeRead|CFile::shareDenyNone))==NULL) { AfxMessageBox("Can not open the file"); return NULL; } if(!pData) return NULL; file.ReadHuge(pData,lFileSize); file.Close(); return pData; } BYTE * OpenSIF(CString fileName,long *width,long *height) { BYTE * pData; if(fileName=="") return FALSE; *width = 352; *height = 240; long lFileSize = (*width) * (*height); pData = (BYTE*)new char[lFileSize]; CFile file; if((file.Open(fileName,CFile::modeRead|CFile::shareDenyNone))==NULL) { AfxMessageBox("Can not open the file"); return NULL; } if(!pData) return NULL; file.ReadHuge(pData,lFileSize); file.Close(); return pData; }