For other customers interested in this issue, here are a few things the thread starter and I have discussed checking on so far. These are the questions I previously asked the customer:
1) Are you calling CWIMAQOverlay.Clear at any point? This would clear
any overlay data from the image buffer. I know this one sounds a little
obvious, but it wouldn't hurt to check.
2) Are you resizing or
rotating the image and therefore inadvertently clearing the buffer that
way? This would produce the same effect as CWIMAQOverlay.Clear.
3)
Are you disposing of your image buffer in the middle of your
acquisition process? The recommended way of handling image buffers is
to create the buffer once before starting your acquisition, write to it
as necessary during acquisition, and then only dispose it after you are
through with your acquisitions.
After covering that, we also most recently discussed checking the HasOverlay property of the image at various points in the program to see if it returned True for having an overlay even if it wasn't displaying it.