如何获得当前的输入法名称?? 找到这段代码:           char  szBuf[25]; 
          double thId; 
          HANDLE  hCurrentKBLayout; 
          //取回描述应用程序键盘布局的句柄,0表示取当前输入法 
          hCurrentKBLayout  =  GetKeyboardLayout(0); 
          memset(szBuf,  0x00,  25); 
          //获取指定输入法的名称 
          ImmGetDescription(hCurrentKBLayout,  szBuf,  50); 
          if(String(szBuf).Length()==0) 
                  strcpy(szBuf,"系统默认"); 
          ShowMessage("当前输入法:  "  +  String(szBuf)); 
取得当前的输入法是:  "搜狗拼音输入法" 
        怎么样取得:  "中文 (简体) - 搜狗拼音输入法" 

解决方案 »

  1.   

    查一下MSDN,好像有这么个东东,
    ...............................
    前段时间好像有个牛人说背msdn里函数什么的,希望他背到这个函数了,
      

  2.   

    msdn for vs2005
    ms-help://MS.MSDNQTR.v80.en/MS.MSDN.v80/MS.VisualStudio.v80.en/dv_vcsample/local/sampleexecutables/international/ime.zip
      

  3.   

    这个是兔子说的吧0 0。
    个人认为,中文(简体)  这个可以依靠判断直接得来吧?然后CSRING+即可了
    当然我没用过,要是不行就当我胡说
      

  4.   

    C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\Include\Imm.h
    看看这个头文件,
      

  5.   


    HKL  myhkl;失去焦点时:  myhkl=GetKeyboardLayout(0);//获得当前输入法
      if(ImmIsIME(myhkl))
        ImmSimulateHotKey(Handle,IME_CHOTKEY_IME_NONIME_TOGGLE);
    重新获得焦点时:  if(ImmIsIME(myhkl))
        ActivateKeyboardLayout(myhkl,KLF_ACTIVATE);