Basically in your windows procedure function have the following:
The if should be pretty self-explanitory. However, I will explain just incase. Basically you check the lParam value against the HWND returned when you used CreateWindow or CreateWindowEx in order to create your edit control. If these both equal the same (thus your read-only editbox is the control receiving this message), then you would return a handle to the brush color you want your background of the control to be. I used GetStockObject which would return a handle to the brush color, in this case WHITE_BRUSH. Which turns the background white.
if( (HWND)lParam == hMyEdit ) return(GetStockObject(WHITE_BRUSH));
Hope this helps,