获取TCHAR类型字符串长度

来源:互联网 发布:linux内核启动 编辑:程序博客网 时间:2024/06/11 02:06
项目的字符集被设置为Unicode字符集时,使用Window API经常性会遇到获取Unicode字符串的长度,如下所示:

下面方法是获取系统目录,并将系统目录写入到文件中保存,其中WriteFile方法第三个参数要传入TCHAR类型的字符串长度。

DWORD WriteSystemInfo(){TCHAR szSystemDir[MAX_PATH];//获取系统目录GetSystemDirectory(szSystemDir,MAX_PATH);//文件句柄HANDLE hFile;DWORD dwWritten;hFile = ::CreateFile(_T("systemroot.txt"),GENERIC_WRITE,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL);//判断文件是否成功if(hFile != INVALID_HANDLE_VALUE){//将系统目录写入文件//lstrlen获取TCHAR字符串的长度if(!::WriteFile(hFile,szSystemDir,lstrlen(szSystemDir)*sizeof(TCHAR),&dwWritten,NULL)){return GetLastError();}}//关闭文件::CloseHandle(hFile);return 0;}

原创粉丝点击