在使用VS2010编写运行时动态链接dll文件时出现的一个问题,问题解决得益于此文章: http://blog.sina.com.cn/s/blog_6a2236590100xbgl.html 通过调用这个函数:LoadLibrary出现的该问题.原因 :工程只支持UNICODE字符解决方法:1.在解决方案资源管理器中的工程上右键属性->配置属性-->常规--->字符集---->使用多字节符字符集 2.也就是宽字符,所以下面这行代码,应该编译有错误hinst=LoadLibrary…
问题出现 编译平台:VS2013     Windows 出现地方:在使用LoadLibrary( )函数动态链接DLL文件时出现的一个问题 Eg.   在使用 UNICODE字符的工程中,  HINSTANCE hIcmp = LoadLibrary( "ICMP.DLL" );         报错:error C2664: “HMODULE LoadLibraryW(LPCWSTR)”: 无法将参数 1 从“const char [9]”转换为“LPCWSTR” 分析原因 当前工…
今天在使用vs2008+MFC时候,使用editControl的replacesel(“”)发生报错.如下::不能将参数1从“const char []”转换为“LPCTSTR” 其解决方案就是, 在项目属性里面找到项目默认值下面的字符集, 将其换为:使用多字节字符集就ok了.原因: typedef   LPCTSTR    LPTSTR ; #ifndef   _UNICODE      typedef   TCHAR   char;  #else      typedef   TCHAR  …
转自:http://blog.sina.com.cn/s/blog_4aa4593d0100odra.html 问题的原因是字符串ANSI和Unicode编码的区别, VC6与VS2003等默认使用ANSI编码,而VS2005默认采用Unicode.简单的说,ANSI用1个字节表示字符,Unicode用2个字节表示1个字符.若想要你的代码在VS2005中编译通过,3中方法:1.可修改编码选项:项目属性-->配置属性-->常规-->字符集-->使用多字节字符集2.把你字符串定义为宽字…
转载请注明来源:崨雁嫀筝 http://www.cnblogs.com/xuesongshu 这个错误是我在把tinyxml修改为宽字符(Unicode)版本时候遇到的问题,我首先按关键字把所有有char改成WCHAR,把string改成wstring,把所有窄字符加上L符号,把所有窄字符函数换成宽字符函数,编译时发现ASSERT报错:error C2664: “AfxAssertFailedLine”: 不能将参数 1 从“TCHAR []”转换为“LPCSTR”.仔细查找问题时发现,替换ch…
VS2010 (VC2010)建立工程时默认的字符集是Unicode,所以在代码中使用MessageBox时需要输入Unicode,用TEXT()这个宏输入参数,否则会报错:   代码:MessageBox(TEXT("消息对话框"),TEXT("提示"), MB_OK|MB_OKCANCEL);   错误:error C2664: "CWnd::MessageBoxW": 不能将参数 1 从"const char [3]"转…
原本打算在QT用一个字符串"ABCDEF12345"作为类zajiao的构造函数的参数,用来创建类zajiao的对象zajiao1. zajiao zajiao1("ABCDEF12345"); 结果提示: F:\Users\denggelin\Documents\qtduojicheng\main.cpp:31: error: C2664: “zajiao::zajiao(const zajiao &)”: 无法将参数 1 从“const char [12…
vs2008提示 error C2664: “CWnd::MessageBoxW”: 不能将参数 1 从“const char [17]”转换为“LPCTSTR” 在外面用vs2005编写mfc程序的时候经常要MessageBox("提示信息")函数,在vc6.0是没有问题的,但是在vs2005却会有下面的提示: error C2664: “CWnd::MessageBoxW”: 不能将参数 1 从“const char [17]”转换为“LPCTSTR” 这个错误提示的原因是VS20…
转自VC错误:http://www.vcerror.com/?p=1395 问题描述: 代码: CString str("asdfafda"); str.Remove("asd"); 编译报错 error C2664: "ATL::CStringT<BaseType,StringTraits>::Remove": 不能将参数 1 从"const char [4]"转换为"char" error…
我用的是VS2005,在编译MFC时遇到了如下错误: error C2664: 'CWnd::MessageBoxW' : cannot convert parameter 1 from 'char *' to 'LPCTSTR' 后来发现解决方法很简单,点击"项目"->"属性"->"配置属性"->"常规"->"字符集"选择"使用多字节字符集" 问题解决,后来发现…