I am currently implementing an iterface to a COM object through VC++ 6, and MFC. As part of this job I am interfacing to get and recieve streams (BLOBs)of data from the COM object. The problem is that we are typically sending and recieving image data, and the COM object is recieving and sending strings. Images obviously have a lot of NULL terminators in the data, which creates a problem. I can put the data into a char* (or char far*), successfully, but then place it in a _bstr_t so I can pass it to a _variant_t for the COM object, this tends to corrupt the data, and therefore doesn't solve the problem...need help on what else I can do??