Win32 Ime API:


ImmGetContext: 获取指定窗口的当前的输入上下文,然后再尝试访问上下文中的信息。应用程序应该定期使用这个功能获取窗口的当前的输入上下文。若hWnd参数为零,将返回桌面当前的输入上下文。

HIMC ImmGetContext( HWND hWnd );

GetKeyboardLayout:该函数可以获得指定线程的活动键盘布局句柄。若idThread参数为零,将返回活动线程的键盘布局句柄。
HKL GetKeyboardLayout( DWORD idThread );
返回值:返回值为指定线程的键盘布局句柄。返回值的低位字包含了输入语言的语言标识符,高位字包含了键盘物理布局的句柄。
 

GetKeyboardLayoutList:获得系统适用的所有键盘布局的一个列表
UINT GetKeyboardLayoutList( int nBuff,HKL FAR *IpList );

GetKeyboardLayoutName:检索系统的活动输入区域设置标识符(以前称为键盘布局)的名称。 
BOOL GetKeyboardLayoutNameW( LPWSTR pwszKLID );

LoadKeyboardLayoutA:该函数给系统中装入一种新的键盘布局,可以同时装入几种不同的键盘布局,任一时刻仅有一个进程是活动的,装入多个键盘布局使得在多种布局间快速切换。
HKL LoadKeyboardLayoutA( LPCSTR pwszKLID, UINT Flags );

ActivateKeyboardLayout:为调用线程或当前进程设置输入区域设置标识符(以前称为键盘布局句柄)。输入语言环境标识符指定语言环境以及键盘的物理布局。
HKL ActivateKeyboardLayout( HKL hkl, UINT Flags );

GetKeyboardState 取得键盘上每个虚拟键当前的状态
GetKeyboardType 了解与正在使用的键盘有关的信息
GetKeyNameText 在给出扫描码的前提下,判断键名

GetWindowLong:获取指定窗口的有关信息,也可用于获取窗口内存中指定偏移的32位度整型值。要编写与32位和64位版本的Windows兼容的代码,请使用GetWindowLongPtr。在编译32位Windows时,GetWindowLongPtr被定义为对GetWindowLong函数的调用。
LONG GetWindowLong( HWND hWnd, int nIndex );

GetWindowLongPtr:获取指定窗口的有关信息,也可用于获取窗口内存中指定偏移的32位度整型值。
LONG_PTR GetWindowLongPtr( HWND hWnd, int nIndex );

SetWindowLong:该函数用来改变指定窗口的属性.函数也将指定的一个32位值设置在窗口的额外存储空间的指定偏移位置。此函数已被SetWindowLongPtr函数取代。要编写与32位和64位版本的Windows兼容的代码,请使用SetWindowLongPtr函数。
LONG SetWindowLong( HWND hWnd, int nIndex, LONG dwNewLong );

CallWindowProc:将消息信息传递给指定的窗口过程。
LRESULT CallWindowProcA( WNDPROC lpPrevWndFunc, HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam );

 

Win32 Ime的更多相关文章

  1. Worm.Win32.DownLoader.ns病毒主进程新式输入法注入分析(IME Inject)

    1.病毒会在system32目录生成一个以tmp结尾的随机数命名的文件. 2.然后挂钩HOOK本进程空间的imm32.dll导出的ImmLoadLayout函数和ntdll.dll导出的ZwQuery ...

  2. IME 编程相关

    以下内容摘自http://msdn.microsoft.com/zh-cn/goglobal/bb688135.aspx 在 Win32 中处理输入语言的方法 Microsoft Developer ...

  3. IME输入法编程心得

    原文:IME输入法编程心得 posted @ 2012-11-30 00:42 from [FreedomShe] 自然语言处理的输入法作业成品没有做出来,但不想再在蛋疼的Win32上面耗费时间了,整 ...

  4. WPF 自定义文本框输入法 IME 跟随光标

    本文告诉大家在 WPF 写一个自定义的文本框,如何实现让输入法跟随光标 本文非小白向,本文适合想开发自定义的文本框,从底层开始开发的文本库的伙伴.在开始之前,期望了解了文本库开发的基础知识 本文实现的 ...

  5. C#[Win32&WinCE&WM]应用程序只能运行一个实例:MutexHelper

    前言 在开发应用程序时,通常只让程序运行一个实例.所以,就要判断程序是否已经运行. 下面是我自己在项目中使用到,封装好的帮助类.有 普通的 C# 应用程序 和 Windows CE 和 Windows ...

  6. java.lang.UnsatisfiedLinkError: %1 不是有效的 Win32 应用程序。

    JNA 调用 dll 库时,保错: ///////////////// 通过 JNA 引入 DLL 库 //////////// /** * ID_FprCap.dll 负责指纹的采集, 指纹仪的初始 ...

  7. 初次认识 C# win32 api

    第一次接触win32api,刚开始的时候有点迷迷糊糊的. Windows API 就是windows应用程序接口. win api向上就是windows应用程序,向下就是windows操作系统核心. ...

  8. CTRL-Space always toggles Chinese IME (Windows 7、10)

    一.window占用了ctrl+空格的快捷键,影响开发工具的只能提示的使用. 二.解决方式: Go to Start > Type in regedit and start it (打开运行输入 ...

  9. [老文章搬家] [翻译] 深入解析win32 crt 调试堆

    09 年翻译的东西. 原文见:  http://www.nobugs.org/developer/win32/debug_crt_heap.html 在DeviceStudio的Debug编译模式下, ...

随机推荐

  1. 【安富莱STM32H7教程】第1章 初学STM32H7的准备工作

    完整教程下载地址:http://forum.armfly.com/forum.php?mod=viewthread&tid=86980 第1章   初学STM32H7的准备工作 俗话说万事开头 ...

  2. Amqp整合com.rabbitmq.client.ShutdownSignalException: channel error; protocol method异常处理

    java.io.IOException at com.rabbitmq.client.impl.AMQChannel.wrap(AMQChannel.java:126) at com.rabbitmq ...

  3. UEditor单图上传跨域问题解决方案

    UEditor UEditor是百度团队提供的富文本编辑器 git地址为:https://github.com/fex-team/ueditor 在最近的项目中使用了该插件作为项目的富文本编辑器 由于 ...

  4. 关于:未能加载文件或程序集“ICSharpCode.SharpZipLib”或它的某一个依赖项异常的解决方案

    问题: 今天项目迁移忽然又个ICSharpCode.SharpZipLib.dll 程序包丢失了,于是我在网上下载一个这样的包,结果程序运行就提示:未能加载文件或程序集“ICSharpCode.Sha ...

  5. Workbooks 对象的 Open 方法参数说明

    Workbooks 对象的 Open 方法参数说明 打开一个工作簿. expression.Open(FileName, UpdateLinks, ReadOnly, Format, Password ...

  6. Oracle权限授予

    一.用户 sys;//系统管理员,拥有最高权限 system;//本地管理员,次高权限 scott;//普通用户,密码默认为tiger,默认未解锁 二.登陆 sqlplus / as sysdba;/ ...

  7. Android USB Headset: Device Specification

    For USB headsets to work seamlessly across the Android ecosystem, Android devices must support them ...

  8. Python学习曲线

    经历长达近一个月的资源筛选过程终于结束,总共1.5T百度网盘的资源经过:去重.筛选.整理.归档之后一份粗略的Python学习曲线资源已经成型,虽然中间经历了很多坎坷,不过最终还是完成,猪哥也是第一时间 ...

  9. ViewPagerWithRecyclerDemo【RecyclerView+ViewPager实现类似TabLayout+ViewPager效果】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 使用RecyclerView+ViewPager实现类似TabLayout+ViewPager效果. 效果图 使用步骤 一.项目组织 ...

  10. Android上的Badge,快速实现给应用添加角标

    应用角标是iOS的一个特色,原生Android并不支持.或许是因为当时iOS的通知栏比较鸡肋(当然现在已经改进了很多),而Android的通知栏功能强大?所以才出现了一方依赖于数字角标,一方坚持强大的 ...