珞珈山水BBS电脑网络程序人生 → 单文区文章阅读

单文区文章阅读 [返回]
发信人: lovelily (半导体), 信区: Programm
标  题: 请教VC里的一个程序,好心人帮帮忙
发信站: BBS 珞珈山水站 (Mon Apr 11 16:51:58 2005)

   后台处理,系统要将图片(bmp)读入到内存中,从内存中写入一个临时文件 e:\test.
bmp
    我做了前面的(但不知对不对),后面的不知道怎么做了。
bool CTestDlg::LoadBMP(LPCTSTR sBMPFILE)
{
    CFile file; 
    
    if(!file.Open(sBMPFILE,Cfile::modeRead)) 
        return false; 
    BITMAPFILEHEADER bmfHeader; 
    long nFileLen; 
    nFileLen = file.GetLength(); 
    
    //read the file 
    if(file.Read((LPSTR)&bmfHeader,sizeof(bmfHeader)) != sizeof(bmfHeader)) 
        return false; 
    
    //read the "BM" 
    if(bmfHeader.bfType != ((WORD)('M'<< 8| 'B'))) 
        return false; 
    
    HGLOBAL phDIB = ::GlobalAlloc(GMEM_FIXED,nFileLen); 
    phDIB = new int[nFileLen]; 
    if(phDIB == 0) 
        return false; 
    
    //read the remainder of the bitmap file 
    if(file.Read((LPSTR)phDIB,nFileLen-sizeof(BITMAPFILEHEADER))!= nFileLen-si
zeof(BITMAPFILEHEADER)) 
    { 
        ::GlobalFree(phDIB); 
        return false; 
    } 
    return true; 
}
--

※ 来源:·珞珈山水BBS站 http://bbs.whu.edu.cn·[FROM: 221.232.226.*]
[返回单文区目录]

武汉大学BBS 珞珈山水站 All rights reserved.
wForum , 页面执行时间:18.009毫秒