MFC C3861 找不到标识符

fanbaoqiang111 fanbaoqiang111 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
我是搞C#的,刚接触VC++ 真的蒙圈了。。。请高手帮助
s2ws(s)报错,找不到标识符。

void CMFCApplication1Dlg::OnBnClickedButton1()//按钮
{
//string 转换为 LPCTSTR
string s = "aaa";
std::wstring stemp =s2ws(s); // Temporary buffer is required
LPCWSTR result = stemp.c_str();
//Button1 弹出窗口
MessageBox(result, _T("请进行判断"), MB_OK);
}
std::wstring s2ws(const std::string& s)
{
int len;
int slength = (int)s.length() + 1;
len = MultiByteToWideChar(CP_ACP, 0, s.c_str(), slength, 0, 0);
wchar_t* buf = new wchar_t[len];
MultiByteToWideChar(CP_ACP, 0, s.c_str(), slength, buf, len);
std::wstring r(buf);
delete[] buf;
return r;
}
...全文

相关推荐

VTK在WIN7,VS2010下配置MFC和QT详细说明和分析

VTK三维可视化开发库,在WINDOWS7系统中,开发环境VS2010情况下,配置MFC和QT详细说明和分析,实际操作总结。

wszj800

evc 转换到 vs2005的若干问题

描述了evc 到vs2005代码转换的一些问题, 方便vs2005下的嵌入式程序开发

wbfray

VS2010 EXCEL完美操作

值得下载,值得学习,希望你们都来下载使用推广,扩展功能模块!

彭生奇

五子棋 源码

刚学习vc++,下载了些源码,这是我下载到的最好的一个版本啦~~~~~~~~~ 不好意思,发的是原文件,有点小问题: 首先声明这是VC.net 的解决方案(所以楼上有朋友说没有看见VC++6.0的的WorkSpace(.dsw……) 原文件是老版本的,打开的时候可能会提醒你转换~~ +作者设置了只读属性,建议先把只读属性去除…… 据说是 vc2005 的语法检查更加的严格了,所以会有一些 warning ~~~~~可以忽略的…… 另外还是会有一个错误……如下: 如果直接打开的话我这里的vc.net2005 提示: “ --- 已启动生成: 项目: Pente, 配置: Debug Win32 ------ 正在编译... StdAfx.cpp WINVER not defined. Defaulting to 0x0502 (Windows Server 2003) 正在编译... SetupDlg.cpp RecordDlg.cpp PenteDlg.cpp c:\documents and settings\kjl801\桌面\vc.net 五子棋源码\pentedlg.cpp(45) : warning C4101: 'szVer' : unreferenced local variable Pente.cpp c:\documents and settings\kjl801\桌面\vc.net 五子棋源码\pente.cpp(53) : error C3861: 'Enable3dControls': identifier not found HelperAPI.cpp c:\documents and settings\kjl801\桌面\vc.net 五子棋源码\helperapi.cpp(14) : warning C4996: 'strcat' was declared deprecated e:\visual studio 2005\vc\include\string.h(78) : see declaration of 'strcat' Message: 'This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_DEPRECATE. See online help for details.' Dib.cpp c:\documents and settings\kjl801\桌面\vc.net 五子棋源码\dib.cpp(537) : warning C4244: '=' : conversion from 'ULONGLONG' to 'DWORD', possible loss of data BestDlg.cpp AboutDlg.cpp Generating Code... 生成日志保存在“file://c:\Documents and Settings\kjl801\桌面\vc.net 五子棋源码\Debug\BuildLog.htm” Pente - 1 个错误,3 个警告 ========== 生成: 0 已成功, 1 已失败, 0 最新, 0 已跳过 ========== ” 我的解决方法是把下面这一段注释掉就Ok了: /* #ifdef _AFXDLL Enable3dControls(); // Call this when using MFC in a shared DLL #else Enable3dControlsStatic(); // Call this when linking to MFC statically #endif */ // 这一部分在vc6.0 的MFC新建的工程里面 经常看见……可能是版本不支持的原因导致的…… 修改后可能会提示你 原文件是只读的……点击“ 改写” 就是了 ……

仲询

29Linux基础命令详解——用户管理.docx

29Linux基础命令详解——用户管理

云计算练习生
评论 2
收藏 已收藏
分享
返回顶部
fanbaoqiang111
VC/MFC 16,550 成员 421,606 内容