实现多国语言的几个小知识
2015-11-26 15:36
344 查看
From:/article/2577516.html
获取模块(exe,dll)的执行目录
CString szCurPath(""), szModelPath;
GetModuleFileName(NULL,szCurPath.GetBuffer(MAX_PATH),MAX_PATH);
szCurPath.ReleaseBuffer();
szModelPath = szCurPath.Left(szCurPath.ReverseFind('//') + 1); //去掉模块的名字
寻找目录下的文件
CFileFind find;
//Call this member function to open a file search
bool bRet = find.FindFile(szCurPath + "*.txt");
CString szEng = "";
while(bRet)
{
bRet = find.FindNextFile();
if(find.IsDots() || find.IsDirectory()) continue;
CString szFileName = find.GetFileName();
//....
}
find.Close();
创建一个目录
CreateDirectory(szPath,NULL);
把资源文件中的某一项写出为文件
HRSRC hSrc = FindResource(NULL,MAKEINTRESOURCE(nID),_T("OWNER_DATA"));
if(hSrc == NULL) return false;
HGLOBAL hGlobal = LoadResource(NULL,hSrc);
if(hGlobal == NULL) return false;
LPVOID lp = LockResource(hGlobal);
DWORD dwSize = SizeofResource(NULL,hSrc);
CFile file;
if(file.Open(szPathName,CFile::modeCreate|CFile::modeWrite))
{
file.Write(lp,dwSize);
file.Close();
}
FreeResource(hGlobal);
配置文件的读写
字符串:
GetPrivateProfileString
WritePrivateProfileString
遍历对话框的子控件
CWnd* pWnd = pDlg->GetWindow(GW_CHILD);
while(pWnd != NULL)
{
//******
//pWnd->GetDlgCtrlID()
pWnd = pWnd->GetWindow(GW_HWNDNEXT);
}
获得菜单
CWnd::GetMenu()
遍历菜单:
CMenu的几个成员函数:
GetSubMenu
GetMenuItemCount
GetMenuItemID
参考:
程序实现多国语言的动态切换解决方案
作者:耿海增
获取模块(exe,dll)的执行目录
CString szCurPath(""), szModelPath;
GetModuleFileName(NULL,szCurPath.GetBuffer(MAX_PATH),MAX_PATH);
szCurPath.ReleaseBuffer();
szModelPath = szCurPath.Left(szCurPath.ReverseFind('//') + 1); //去掉模块的名字
// 获得可执行文件所在的目录 CString GetModuleDirName() { CString dirName; ::GetModuleFileName(nullptr, dirName.GetBuffer(MAX_PATH), MAX_PATH); dirName.ReleaseBuffer(); // 释放对GetBuffer所返回的缓冲区的控制权 int pos = dirName.ReverseFind('\\'); dirName = dirName.Left(pos); return dirName; }
寻找目录下的文件
CFileFind find;
//Call this member function to open a file search
bool bRet = find.FindFile(szCurPath + "*.txt");
CString szEng = "";
while(bRet)
{
bRet = find.FindNextFile();
if(find.IsDots() || find.IsDirectory()) continue;
CString szFileName = find.GetFileName();
//....
}
find.Close();
创建一个目录
CreateDirectory(szPath,NULL);
把资源文件中的某一项写出为文件
HRSRC hSrc = FindResource(NULL,MAKEINTRESOURCE(nID),_T("OWNER_DATA"));
if(hSrc == NULL) return false;
HGLOBAL hGlobal = LoadResource(NULL,hSrc);
if(hGlobal == NULL) return false;
LPVOID lp = LockResource(hGlobal);
DWORD dwSize = SizeofResource(NULL,hSrc);
CFile file;
if(file.Open(szPathName,CFile::modeCreate|CFile::modeWrite))
{
file.Write(lp,dwSize);
file.Close();
}
FreeResource(hGlobal);
配置文件的读写
字符串:
GetPrivateProfileString
WritePrivateProfileString
遍历对话框的子控件
CWnd* pWnd = pDlg->GetWindow(GW_CHILD);
while(pWnd != NULL)
{
//******
//pWnd->GetDlgCtrlID()
pWnd = pWnd->GetWindow(GW_HWNDNEXT);
}
获得菜单
CWnd::GetMenu()
遍历菜单:
CMenu的几个成员函数:
GetSubMenu
GetMenuItemCount
GetMenuItemID
参考:
程序实现多国语言的动态切换解决方案
作者:耿海增
相关文章推荐
- swift可选链和类型转换
- 【学习笔记】分区表和分区索引——概念部分(一)
- [python]python子字符串的提取、字符串连接、字符串重复
- oracle function学习1
- 模拟迁途箭头圆圈
- ubuntu下创建、删除文件、文件夹,移动文件
- css层叠样式详解
- android View各属性详解
- 二叉搜索树-BST-查找算法-插入算法-删除算法 http://www.cnblogs.com/pangxiaodong/archive/2011/08/24/2151060.html
- 模拟迁途.html
- windows server做NTP时间服务器 及时间设置internet时间同步的方法
- 【实战Java高并发程序设计 2】无锁的对象引用:AtomicReference
- OSSIM下安装phpadmin全过程
- Java的Struts框架中Action的编写与拦截器的使用方法
- PHP在foreach中对$value赋值无效的问题
- BOW模型在ANN框架下的解释
- MySQL表结构修改
- 特殊控制器
- 苹果手机的语言自动识别
- Linux系统信息查看命令大全