很奇怪, 我的程序如下:
CBitmap Bitmap;
if( Bitmap.CreateCompatibleBitmap(pDC, 80, 60) )
{
    CBitmap* pOldBitmap = dcMem.SelectObject(&Bitmap);
    if( pOldBitmap )
    {
        CRect rc(0, 0, 80, 60);
        dcMem.Rectangle(&rc);        SaveBitmapToFile((HBITMAP)Bitmap, "a.bmp");
        HBITMAP hBitmap = (HBITMAP)LoadImage(GetModuleHandle(NULL), "a.bmp", IMAGE_BITMAP, 80, 60, LR_LOADFROMFILE);
        BOOL b = m_ilThumbnail.Replace(1, CBitmap::FromHandle(hBitmap), NULL);
        b = m_lstThumbnail.InsertItem(1, NULL, 1); // 这里插入的item可以显示出来        b = m_ilThumbnail.Replace(2, &Bitmap, NULL);
        b = m_lstThumbnail.InsertItem(2, NULL, 2); // 这里插入的就不能显示了, 显示出来的是一块全黑的位图
        ...
    }
...
}
难道只有用LoadBitmap或LoadImage之类载入的位图才能够在listctrl中显示吗?