读书人

不能将参数 1 从“const char [508]”

发布时间: 2014-06-03 16:28:29 作者: rapoo

不能将参数 1 从“const char [508]”转换为“const wchar_t *”是怎么回事涅??

C/C++ code
CString sSqlStr;        sSqlStr.Format("insert into MasterInfo (EditTime,GSMCCN,GSMCEN,CLSJ,FRDBCN,FRDBEN,POSTCODE,"            "ADDRESSCN,ADDRESSEN,ZYCPFWCN,ZYCPFWEN,BUYCN,BUYEN,GSWZ,GSJJCN,GSJJEN,"            "NAMECN,FIRSTNAME,LASTNAME,MSN,QQ,NATIONCODE,CITYCODE,PHONE,OFFICECODE,FAX,MOBILEPHONE,EMAIL,"            "ZCZJ,GSXZ,JYMS,GYRS,NYYE,COUNTRY,PROVINCE,CITY,TOWN,SEX,ZW,BM) "            "values ('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s',"            "'%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s',"            "'%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d','%d')",            EditTime,GSMCCN,GSMCEN,CLSJ,FRDBCN,FRDBEN,POSTCODE,            ADDRESSCN,ADDRESSEN,ZYCPFWCN,ZYCPFWEN,BUYCN,BUYEN,GSWZ,GSJJCN,GSJJEN,            NAMECN,FIRSTNAME,LASTNAME,MSN,QQ,NATIONCODE,CITYCODE,PHONE,OFFICECODE,FAX,MOBILEPHONE,EMAIL,            ZCZJ,GSXZ,JYMS,GYRS,NYYE,COUNTRY,PROVINCE,CITY,TOWN,SEX,ZW,BM);            BSTR sql=sSqlStr.AllocSysString();        pConn->Execute(sql,NULL,adCmdText);


C/C++ code
1>------ 已启动生成: 项目: SendTool, 配置: Debug Win32 ------1>正在编译...1>DlgMasterInfo.cpp1>f:\visual studio 2008\projects\新建文件夹\sendtool\sendtool\dlgmasterinfo.cpp(120) : error C2664: “void ATL::CStringT<BaseType,StringTraits>::Format(const wchar_t *,...)”: 不能将参数 1 从“const char [508]”转换为“const wchar_t *”1>        with1>        [1>            BaseType=wchar_t,1>            StringTraits=StrTraitMFC<wchar_t>1>        ]1>        与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换1>生成日志保存在“file://f:\Visual Studio 2008\Projects\新建文件夹\SendTool\SendTool\Debug\BuildLog.htm”1>SendTool - 1 个错误,0 个警告========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========


前辈忙帮忙看看啊!

[解决办法]
用_T()宏把字符串转换成UNICODE字符串
[解决办法]
在你的项目属性里面把编码方式改为"使用多字节字符集" 或者把代码改成这样的形式


_T("insert into MasterInfo (EditTime,GSMCCN,GSMCEN,CLSJ,FRDBCN,FRDBEN,POSTCODE,") 宽字符

读书人网 >VC/MFC

热点推荐