CoInitialize(NULL); //for ListView_SetBkImage. start of program LVBKIMAGE lv; char szFileName[MAX_PATH] = "D:\\back.bmp"; ZeroMemory(&lv, sizeof(lv)); lv.ulFlags = LVBKIF_STYLE_NORMAL | LVBKIF_SOURCE_URL; lv.pszImage = szFileName; //full path required lv.cchImageMax = MAX_PATH; BOOL bResult = ListView_SetBkImage(m_hWnd, &lv); CoUninitialize(); //end of program