0
我想使用GDI +位图类将IStream转换为HBITMAP。 IStream对象正在使用来自Web服务的数据进行填充。我正在读取部分数据并将其附加到稍后与Bitmap类一起使用的对象。在vC++中正确使用char数组
下面是代码
char data1[] = "";
int offset = 0;
LPTSTR pszString = NULL;
LPSTREAM lpStream = NULL;
CreateStreamOnHGlobal(NULL, TRUE, &lpStream);
StreamStringCopy ((LPSTREAM)lpStream, (LPCTSTR)"");
while(of->pread(&data1,1023,offset) > 0){
LPCTSTR tempStr = data1;
StreamStringCat ((LPSTREAM)lpStream, tempStr);
offset = offset + strlen(data1);
}
Bitmap bm(lpStream,FALSE);
bm.GetHBITMAP(Color.Black, &ret);
StreamStringCat附加字符串到LPSTREAM对象,所以我可以得到一个单一LPSTREAM对象的相关部分。
循环仅在第一次运行良好。当再次输入while循环时,数据1会给出访问冲突异常。
有人可以告诉我应该如何解决这个问题。 谢谢。