Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1744448
  • 博文数量: 263
  • 博客积分: 1218
  • 博客等级: 少尉
  • 技术积分: 2862
  • 用 户 组: 普通用户
  • 注册时间: 2011-06-19 02:33
文章分类

全部博文(263)

文章存档

2020年(12)

2019年(2)

2018年(10)

2016年(1)

2015年(20)

2014年(115)

2013年(46)

2012年(37)

2011年(20)

分类: Windows平台

2013-12-07 23:02:09

转:
http://blog.sina.com.cn/s/blog_670e606a0100m6io.html




写ADO数据库程序使用别人封装好的CADODatabase,CADORecordset类等, 用VS2005编译出以下问题: BOOL CADORecordset::Open(_ConnectionPtr mpdb, LPCTSTR lpstrExec, int nOption)
{
Close();

if(strcmp(lpstrExec, _T("")) != 0)  //这行出问题
m_strQuery = lpstrExec;


.....
}
ado2.cpp(158) : error C2664: “strcmp”: 不能将参数 1 从“LPCTSTR”转换为“const char *”
还有
error C2664: “void ATL::CStringT::Format(const wchar_t *,...)”: 不能将参数 1 从“const char [83]”转换为“const wchar_t *”



解决方法:

方法2:

在新建项目时,把使用UNICODE字符集取消,如下图:




方法3:

修改如下属性【字符集】的值为【使用多字节字符集】

如图:


这第三种我试过,选择"字符集"为"未设置"也行.


我是用第三种方法解决问题的, 用第二种方法也没把问题解决.








阅读(11579) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~