Beispiel #1
0
HANDLE ChargerBitmap(char *FileName,POINT *lppt)
{
        HFILE hFile;
        OFSTRUCT ofstruct;
        HANDLE result;
        LPSTR    lpDIBHdr;
        unsigned int size;

        size = Getfilesize(FileName);
        hFile=OpenFile((LPSTR) FileName, &ofstruct, OF_READ | OF_SHARE_DENY_WRITE);
        result =  ReadDIBFile(hFile,size);
        if (hFile) _lclose(hFile);
        if (result) {
                LPBITMAPINFOHEADER lpbmi;
                LPBITMAPCOREHEADER lpbmc;

                lpDIBHdr  = GlobalLock (result);
                lpbmi = (LPBITMAPINFOHEADER) lpDIBHdr;
                lpbmc = (LPBITMAPCOREHEADER) lpDIBHdr;

                if (lpbmi->biSize == sizeof (BITMAPINFOHEADER)) {
                        lppt->y = lpbmi->biHeight;
                        lppt->x = lpbmi->biWidth;
                }
                else {
                        lppt->y = lpbmc->bcHeight;
                        lppt->x = lpbmc->bcWidth;
                }
                GlobalUnlock(result);
        }
        return(result);
}
Beispiel #2
0
HDIB LoadDIB(const char* lpFileName)
{
    HDIB        hDIB;
    HANDLE      hFile;

    // Set the cursor to a hourglass, in case the loading operation
    // takes more than a sec, the user will know what's going on.

    SetCursor(LoadCursor(NULL, IDC_WAIT));

    if ((hFile = CreateFile(lpFileName, GENERIC_READ, FILE_SHARE_READ, NULL,
            OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL | FILE_FLAG_SEQUENTIAL_SCAN,
            NULL)) != INVALID_HANDLE_VALUE)
    {
        hDIB = ReadDIBFile(hFile);
        CloseHandle(hFile);
        SetCursor(LoadCursor(NULL, IDC_ARROW));
        return hDIB;
    }
    else
    {
        showerrorbox("File not found");
        SetCursor(LoadCursor(NULL, IDC_ARROW));
        return NULL;
    }
}
Beispiel #3
0
HDIB FAR LoadDIB(LPSTR lpFileName)
{
   HDIB hDIB;
   int hFile;
   OFSTRUCT ofs;

   /*
    * Set the cursor to a hourglass, in case the loading operation
    * takes more than a sec, the user will know what's going on.
    */

   SetCursor(LoadCursor(NULL, IDC_WAIT));
   if ((hFile = OpenFile(lpFileName, &ofs, OF_READ)) != -1)
   {
      hDIB = ReadDIBFile(hFile);
      _lclose(hFile);
      SetCursor(LoadCursor(NULL, IDC_ARROW));
      return hDIB;
   }
   else
   {
      DIBError(ERR_FILENOTFOUND);
      SetCursor(LoadCursor(NULL, IDC_ARROW));
      return NULL;
   }
}