请帮忙看看这个报错

相门三少 2010-04-09 09:18:46
LPCTSTR lpFileName = _T("c:\\a.stg");
HRESULT hr;
IStorage *pStg = NULL;

USES_CONVERSION;
LPCOLESTR lpwFileName = T2COLE(lpFileName);//转换T类型为宽字符
hr = StgIsStorageFile(lpFileName);//是复合文件吗
if(FAILED(hr))return;


下面这句编译有错误:error C2664: 'StgIsStorageFile' : cannot convert parameter 1 from 'const char *' to 'const unsigned short *'

hr = StgIsStorageFile(lpFileName);//是复合文件吗

有点搞不明白了
...全文
63 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
yangchangdao 2010-04-18
  • 打赏
  • 举报
回复
接分】
回复内容短了
Eleven 2010-04-09
  • 打赏
  • 举报
回复
恭喜,接分。。。
相门三少 2010-04-09
  • 打赏
  • 举报
回复
晕,原来调用错了,这么低级的错误居然没发现,谢谢
Jimmy_Xia 2010-04-09
  • 打赏
  • 举报
回复
汗,少了指针符号,
wchar_t* lpFileName = L"c:\\a.stg";
Jimmy_Xia 2010-04-09
  • 打赏
  • 举报
回复
试试这个
wchar_t lpFileName = L"c:\\a.stg";
hxingz 2010-04-09
  • 打赏
  • 举报
回复
LPCOLESTR不是宽字符,转化宽字符用MultiByteToWideChar
bobob 2010-04-09
  • 打赏
  • 举报
回复
答案如楼上
都转换成宽字串了,调用却用的还是原来的
zyq5945 2010-04-09
  • 打赏
  • 举报
回复
你自己都转换好不了吧。
hr = StgIsStorageFile(lpFileName);//是复合文件吗
--》
hr = StgIsStorageFile(lpwFileName);//是复合文件吗

3,245

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧