内容回顾:

[1]十个步骤找回 Win8 中的微软拼音新体验模式

[2]发布个工具,一键恢复Win8/8.1中的微软拼音长句模式(新体验模式)

在 [1] 中,我们找回了 Win8 里的微软拼音新体验模式;在 [2] 中,依照 ePig 提供的方法,我们在 Win8.1 中也搬回了微软拼音新体验模式,但留下了一点遗憾,不支持 Metro 应用。

(其实还有一点,没有显示图标。)

原本我觉得无所谓,因为我反正不太用 Metro 应用,Metro 下就用自带的微软拼音简捷模式好了。可是,可是,输入法管理器中,比如保留一个兼容 Metro 的输入法,导致桌面下也比如保留简捷模式了,这样切换输入法经常切错,离所谓“一个输入法”的伟大目标相差甚远。于是乎,不能忍。然后昨天起来看了下这个问题。

原先微软拼音输入法的一个不知什么的GUID是 {81d4e9c9-1d3b-41bc-9e6c-4b40bf79e35e},该 GUID 代表的输入法下有两个输入模式,新体验和简捷。(这个构架和相关内容我不是很懂,具体请去查阅 TSF (Text Service Framework) 框架相关文档。) Win 8 下只是删除了新体验模式的那个注册表项并对注册表项加权限保护达到禁用目的。Win8.1 下的变化是,老的文件被删除了,且 {81d4e9c9-1d3b-41bc-9e6c-4b40bf79e35e} 被用作新的微软拼音的 GUID 了,里面也不再分两个模式了(其实只有原先的简捷模式)。按照 ePig 提供的方法,从 Win8 中复制相关文件,并把文件中的 GUID 改了,重新注册进去。这边我在一键恢复工具所带的文件中是把 GUID 末尾 e 改为了 f,完整的就是 {81D4E9C9-1D3B-41BC-9E6C-4B40BF79E35F}。按道理应该完全兼容才是,起码 Win8 下是支持 Metro 的。微软拼音很早就是 TSF 框架了(而不是 Imm),据我之前的了解,要支持 Metro,输入法使用 TSF 框架就好了。

想不通的情况下,就来比较下 Win8.1 下自带的微软拼音(简捷模式)和我们新加的微软拼音新体验模式的注册表项差异:

发现自带的多了几项(红框部分)。于是仿照着把这些补上去,结果确实不显示“仅适用于桌面版”了,可是好像也没法输入了……于是每次只加一项,依次试过去(穷举法,鄙视)。最后发现前两个 ,也就是 {13A016DF-560B-46CD-947A-4C3AF1E0E35D}、{25504FB4-7BAB-4BC1-9C69-CF81890F0EF5} 可以要,最后 {74769ee9-4a66-4f9d-90d6-bf8b7c3eb461} 不能要。

再看下 Win8 的,果然也是有这两个 Category 的:

然后这事情就算成了:

一键工具已更新,下载页面:http://www.streamlet.org/Software/MSPYForever/

那么这两个 GUID 到底是什么呢?Google 一下……

关于前者,http://msdn.microsoft.com/zh-cn/library/windows/apps/hh967425.aspx#set_compatibility_flag 中有说明如下:

声明兼容性

IME 通过使用 ITfCategoryMgr::RegisterCategory 为其 IME 注册类别 GUID_TFCAT_TIPCAP_IMMERSIVESUPPORT 来声明其兼容 Windows 应用商店应用。

其中 GUID_TFCAT_TIPCAP_IMMERSIVESUPPORT 就是 {13A016DF-560B-46CD-947A-4C3AF1E0E35D}。

{25504FB4-7BAB-4BC1-9C69-CF81890F0EF5} 也是个预定义的值,叫做 GUID_TFCAT_TIPCAP_SYSTRAYSUPPORT,按字面理解,系统托盘支持,可是查不到官方说明啊,http://msdn.microsoft.com/en-us/library/ms629012.aspx 这一页啥也不说,是不是bug……

不管怎么说,问题是解决了。大快人心。

再顺便黑下大微软。

看这张图,我在写代码或写Word或者写别的文字,开着中文语言下的中文输入法(写代码怎么会开中文?不要在意这些细节……),然后来了条 QQ 消息。我去任务栏点企鹅图标。结果刚点下,因为任务栏、桌面是英文语言下的美式键盘,输入法指示器变为 ENG,缩短了,企鹅图标跑右边去了,点空了!!!

正因为如此,我以前总是把英文语言删掉,只有中文语言,下面一个输入法,靠 Shift 在输入法内切换中英文。可是 Shift 很容易误操作有木有。最佳的方式还是中文语言下的美式键盘……这个问题很早之前研究过几个小时,但没啥结果,后来想,如果真的没办法了,干脆写一个空的输入法原样输入输出,叫做“美式键盘”得了。为啥中文下就不给键盘布局呢?为什么呢为什么呢为什么呢?

昨天又去网上搜了下,结果高人已经给出了方法了,不知道哪篇是原创,就不引用了,有兴趣的自己搜。这里还有个半官方的出处:http://answers.microsoft.com/zh-hans/windows/forum/windows_8-ime/windows-8%E7%9A%84%E8%BE%93%E5%85%A5%E6%B3%95/91917117-c5fd-4c61-ac2e-da0dd29d12fc。但其实美式键盘没有图标,会显示“简体”,所以也会有长短变化。最佳的方法还是恢复成语言栏的样子:

这下同在中文语言下了,Ctrl+Shift 切输入法,怎一个舒服了得~!至此,Win8、Win8.1 的输入法问题对我个人而言已经全部解决了,可以大规模重装系统了。

忍不住再黑下大微软:http://answers.microsoft.com/zh-hans/windows/forum/windows_8-ime/%E5%85%B3%E4%BA%8E%E4%B8%AD%E6%96%87%E7%89%88windo/b5c3190f-bb82-4855-97f0-00d6011e3e33,这个答非所问,是不是在搞笑?

让 Win8.1 微软拼音新体验模式支持 Metro 应用的更多相关文章

  1. 深蓝词库转换2.2发布,支持手心输入法和Win10微软拼音

    距离上一次大版本的发布已经很久很久了,中间是不是会收到一些用户的来信,提出新的需求,于是只是做小版本的更新,终于积累了一些更新后,打算做个大版本的发布了. 深蓝词库转换是一个输入法的词库互转和生成软件 ...

  2. Win8.1微软官方最终正式版ISO镜像文件

    Win8.1微软官方最终正式版ISO镜像文件 经过预览版,测试版.开发版本等几个乱七八糟的版本后,2013年10月17日,微软终于如约的发布了Win8.1最终正式版. Win8.1和win8的区别 1 ...

  3. atitit。win7 win8 win9 win10 win11 新特性总结与战略规划

    atitit.win7 win8 win9 win10  win11 新特性总结与战略规划 1. win7 1 1.1. 发布时间 2009年10月22日 1 1.2. 稳定性大幅提升,很少蓝屏死机 ...

  4. 微软Azure已开始支持hadoop--大数据云计算

    微软Azure已开始支持hadoop,对于有需要弹性大数据运算的公司可能是个好消息.据悉,近期微软已提供一个预览版的Azure HDInsight(Hadoop on Azure)服务,运行在Linu ...

  5. 酷!微软发布新终端工具,Win 10 将自带 Linux 内核

    原创:技术最前线(id:TopITNews) 北京时间 5 月 7 日,2019 年微软 Build 开发者大会在雷德蒙德召开.今年大会上亮点很多,本文汇总一些和开发者相关的内容. 1. Window ...

  6. linux如何编译安装新内核支持NTFS文件系统?(以redhat7.2x64为例)

    内核,是一个操作系统的核心.它负责管理系统的进程.内存.设备驱动程序.文件和网络系统,决定着系统的性能和稳定性.Linux作为一个自由软件,在广大爱好者的支持下,内核版本不断更新.新的内核修订了旧内核 ...

  7. Win7系统删除微软拼音

    微软拼音会在使用Office时偷偷的安装,都找不到删除的地方.在网上找了很多方法都不灵光,最后用下面的方法成功删除.   在语言设置窗口里,重新添加一次这个输入法,确定保存,然后再删除,就行了. 这个 ...

  8. 常用输入法快速输入自定义格式的时间和日期(搜狗/QQ/微软拼音)

    几个主流的输入法输入 rq 或者 sj 都可以得到预定义格式的日期或者时间.然而他们都是预定义的格式:当我们需要一些其他格式的时候该怎么做呢? 本文将介绍几个常用输入法自定义时间和日期格式的方法. 主 ...

  9. [转帖]订购微软Windows 7延长支持服务的报价曝光 第三年要价两百美金

    订购微软Windows 7延长支持服务的报价曝光 第三年要价两百美金 cnbeta 年2月份的新闻 https://www.cnbeta.com/articles/tech/815885.htm 微软 ...

  10. 用户体验评价——win10自带微软拼音输入法

    目前正在使用的一款输入法就是win10自带的微软拼音输入法, 用户界面,一直在用个人感觉最大的特点就是十分简洁,界面的布局十分清晰,可以隐藏悬浮窗让他显示在菜单栏, 另外其记住用户输入习惯方面也十分优 ...

随机推荐

  1. 绝杀processOn,这款UML画图神器,阿里字节都用疯了,你还不知道?

    大家好,我是陶朱公Boy,又和大家见面了. 前言 在文章开始前,想先问大家一个问题,大家平时在项目需求评审完后,是直接开始编码了呢?还是会先写详细设计文档,后再开始进行编码开发? ☆现实 这个时候可能 ...

  2. JDK 8之前日期和时间的API

    JDK 8之前日期和时间的API(1) System类中的currentTimeMillis():返回当前时间与1970年1月1日0时0分0秒之间以毫秒为单位的时间差.称为时间戳. java.util ...

  3. CompareTest

    一.说明:Java中的对象,正常情况下,只能进行比较:== 或 != .不能使用 > 或 < 的 但是在开发场景中,我们需要对多个对象进行排序,言外之意,就需要比较对象的大小. 如何实现? ...

  4. python基础之常用数据类型和字符串

    一.数据类型 在python3中有六大标准数据类型:Numbers(数字).String(字符串).List(列表).Tuple(元组).Sets(集合).Dictionaries(字典). 其中: ...

  5. antd 批量上传文件逻辑

    基本步骤 通过 antd 框架的 Upload 控件,采用手动上传的方式,先选择需要上传的文件(控制文件数量以及大小),再根据所选的文件列表,循环上传,期间通过 Spin 控件提示上传中. 效果展示 ...

  6. SpringBoot自定义注解+异步+观察者模式实现业务日志保存

    一.前言 我们在企业级的开发中,必不可少的是对日志的记录,实现有很多种方式,常见的就是基于AOP+注解进行保存,但是考虑到程序的流畅和效率,我们可以使用异步进行保存,小编最近在spring和sprin ...

  7. SQL生成脚本

    右键要生成脚本的数据库 选择task 选择Generate script 选择需要生成脚本的table.view.procedure

  8. Salesforce LWC学习(四十) dynamic interaction 浅入浅出

    本篇参考: Configure a Component for Dynamic Interactions in the Lightning App Builder - Salesforce Light ...

  9. 通过tkinter列出全部字体名称

    通过tkinter列出windows系统全部字体名称 通过 tkinter.font 的 families() 函数实现 import tkinter import tkinter.font # 把p ...

  10. Sql Server性能排查和优化懒人攻略

    转载自作者zhang502219048的微信公众号[SQL数据库编程]:Sql Server性能排查和优化懒人攻略 很多年前,笔者那时刚从广东技术师范学院(现为广东技术师范大学,以前为广东民族学院)的 ...