hi,
it turns out there is something wrong with some of my images - what, I'm not sure. they're 24-bit .bmp's. some load and work perfectly as they should, with the code I was using all along (which is like yours). some won't load but (!) if I repeat the CreateSurface call right away, then they sometimes load. so, I'm going to try resaving all the images using something other than Photoshop.