zoukankan      html  css  js  c++  java
  • 实现多国语言的几个小知识


    获取模块(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

    参考:

    程序实现多国语言的动态切换解决方案
    作者:耿海增

  • 相关阅读:
    Linux 设备驱动 Edition 3(中文版)
    内核和用户空间共享内存的实现例程proc和mmap
    mmap的详细使用(用户空间)
    使用 I/O 内存from LDD3
    关于strcpy、memset、memcpy的使用详解
    get_free_page 和其友
    Linux调试技术介绍
    关于信息时代的学习
    [恢]hdu 1196
    [恢]hdu 1157
  • 原文地址:https://www.cnblogs.com/aiwz/p/6333171.html
Copyright © 2011-2022 走看看