永发信息网

MFC 使用 Unicode 字符集的问题 AVIMakeCompressedStream()出错

答案:2  悬赏:10  手机版
解决时间 2021-04-05 13:57
  • 提问者网友:我没有何以琛的痴心不悔
  • 2021-04-04 18:35
hr = AVIFileCreateStream(pfile,&ps,&strhdr);

opts[0]->fccType = streamtypeVIDEO;
opts[0]->fccHandler = mmioStringToFOURCC((LPCWSTR)"MSVC", 0);
opts[0]->dwQuality = 7500;
opts[0]->dwBytesPerSecond = 0;
opts[0]->dwFlags = AVICOMPRESSF_VALID || AVICOMPRESSF_KEYFRAMES;
opts[0]->lpFormat = 0;
opts[0]->cbFormat = 0;
opts[0]->dwInterleaveEvery = 0;

AVIMakeCompressedStream(&pComStream,ps,&pCompressOption,NULL); //pComStream 测试出来是 0000000
AVIStreamSetFormat(pComStream, 0, pBInfo, sizeof(BITMAPINFOHEADER));

AVIMakeCompressedStream(&pComStream,ps,&pCompressOption,NULL); 就这一句 在使用多字符编码的时候没事 但一使用Unicode 字符集的时候 pComStream就是空的 不知道是为什么 有 人能解答吗?
最佳答案
  • 五星知识达人网友:不甚了了
  • 2021-04-04 19:22
(LPCWSTR)"MSVC"改成_T("MSVC")(程序中所有类似的字符串都要这样改),如果出错就包含头文件#incude
全部回答
  • 1楼网友:忘川信使
  • 2021-04-04 20:39
widechartomultibyte 或者可以试试二进制方式写文件, 多个 unicode 的文件头 ff fe
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯