CB2010使用一段时间总结。(Ansi->Unicode)

简介:

装上CB2010,将以前的工程转过来,首先碰到的问题是AnsiString->UnicodeString。要想把程序彻底的改成Unicode,我总结了以下几点:

    1,菜单Project->Options->Directories and Conditionals->_TCHAR maps to char 改为 wchar_t。(C++Builer2010的帮助文件中说,要使用VCL,这是必须的) 。

    2,WinMain() 改成 _tWinMain。(新建工程不用改)。

    3,const char s[N] = "abc"; 改成 const wchar_t  s[N] = L"abc";或者 TEXT("abc");

    4,AnsiString 改成  UnicodeString。  

    5,按键响应函数KeyPress( TObject *Sender, char &Key )中的 char 改为 wchar_t。(新建工程不用改)。

 

不足请大家指正。

 

最近装上Windows7,发现原先用OLE操作Excel的函数不工作了,提示“未能找到"TRUE.xls"文件”,经试验将这一行代码

  vExcelApp.OlePropertyGet( L"WorkBooks" ).OleProcedure( L"Open", L"d://my01.xls" ); 改为:

  vExcelApp.OlePropertyGet( L"WorkBooks" ).OleProcedure( L"Open", WideString(L"d://my01.xls") );后问题解决。

另外像 OlePropertySet( L"PrintTitleRows",L"$1:$1" ) 等函数,第二个参数也必须改为 WideString(L"$1:$1") 才行。

 

转自:http://blog.csdn.net/hong_qi/article/details/4946630

相关文章
|
2月前
扩展ASCII编码(Extended ASCII或8-bit ASCII)
扩展ASCII编码(Extended ASCII或8-bit ASCII)
238 5
VC7(VS2002)调试时 std::string 超过15字符乱码问题
VC7(VS2002)调试时 std::string 超过15字符乱码问题
|
8月前
|
XML JSON 算法
Unicode 14 标准发布
Unicode 14 标准发布
47 0
|
8月前
|
自然语言处理 C语言 C++
33.【C/C++ char 类型与Ascii大整合,少一个没考虑你打我】(一)
33.【C/C++ char 类型与Ascii大整合,少一个没考虑你打我】
30 0
|
8月前
|
C++
33.【C/C++ char 类型与Ascii大整合,少一个没考虑你打我】(二)
33.【C/C++ char 类型与Ascii大整合,少一个没考虑你打我】
51 0
|
8月前
|
C++
33.【C/C++ char 类型与Ascii大整合,少一个没考虑你打我】(三)
33.【C/C++ char 类型与Ascii大整合,少一个没考虑你打我】
29 0
|
10月前
|
存储 Windows
“浅入深处“编码历史,字符串编码(ASCII, GBK, ANSI, Unicode, UTF-8编码),为什么记事本默认ANSI编码,Unicode和UTF8有什么区别
“浅入深处“编码历史,字符串编码(ASCII, GBK, ANSI, Unicode, UTF-8编码),为什么记事本默认ANSI编码,Unicode和UTF8有什么区别
|
11月前
|
Python
Python编码错误的解决办法SyntaxError: Non-ASCII character '\xe7' in file
Python编码错误的解决办法SyntaxError: Non-ASCII character '\xe7' in file
|
安全
[oeasy]python0 113_字符编码_VT100控制码_iso_8859_1_拉丁字符_latin
[oeasy]python0 113_字符编码_VT100控制码_iso_8859_1_拉丁字符_latin
114 0
[oeasy]python0 113_字符编码_VT100控制码_iso_8859_1_拉丁字符_latin