让 Win8.1 微软拼音新体验模式支持 Metro 应用
内容回顾:
[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 应用的更多相关文章
- 深蓝词库转换2.2发布,支持手心输入法和Win10微软拼音
距离上一次大版本的发布已经很久很久了,中间是不是会收到一些用户的来信,提出新的需求,于是只是做小版本的更新,终于积累了一些更新后,打算做个大版本的发布了. 深蓝词库转换是一个输入法的词库互转和生成软件 ...
- Win8.1微软官方最终正式版ISO镜像文件
Win8.1微软官方最终正式版ISO镜像文件 经过预览版,测试版.开发版本等几个乱七八糟的版本后,2013年10月17日,微软终于如约的发布了Win8.1最终正式版. Win8.1和win8的区别 1 ...
- atitit。win7 win8 win9 win10 win11 新特性总结与战略规划
atitit.win7 win8 win9 win10 win11 新特性总结与战略规划 1. win7 1 1.1. 发布时间 2009年10月22日 1 1.2. 稳定性大幅提升,很少蓝屏死机 ...
- 微软Azure已开始支持hadoop--大数据云计算
微软Azure已开始支持hadoop,对于有需要弹性大数据运算的公司可能是个好消息.据悉,近期微软已提供一个预览版的Azure HDInsight(Hadoop on Azure)服务,运行在Linu ...
- 酷!微软发布新终端工具,Win 10 将自带 Linux 内核
原创:技术最前线(id:TopITNews) 北京时间 5 月 7 日,2019 年微软 Build 开发者大会在雷德蒙德召开.今年大会上亮点很多,本文汇总一些和开发者相关的内容. 1. Window ...
- linux如何编译安装新内核支持NTFS文件系统?(以redhat7.2x64为例)
内核,是一个操作系统的核心.它负责管理系统的进程.内存.设备驱动程序.文件和网络系统,决定着系统的性能和稳定性.Linux作为一个自由软件,在广大爱好者的支持下,内核版本不断更新.新的内核修订了旧内核 ...
- Win7系统删除微软拼音
微软拼音会在使用Office时偷偷的安装,都找不到删除的地方.在网上找了很多方法都不灵光,最后用下面的方法成功删除. 在语言设置窗口里,重新添加一次这个输入法,确定保存,然后再删除,就行了. 这个 ...
- 常用输入法快速输入自定义格式的时间和日期(搜狗/QQ/微软拼音)
几个主流的输入法输入 rq 或者 sj 都可以得到预定义格式的日期或者时间.然而他们都是预定义的格式:当我们需要一些其他格式的时候该怎么做呢? 本文将介绍几个常用输入法自定义时间和日期格式的方法. 主 ...
- [转帖]订购微软Windows 7延长支持服务的报价曝光 第三年要价两百美金
订购微软Windows 7延长支持服务的报价曝光 第三年要价两百美金 cnbeta 年2月份的新闻 https://www.cnbeta.com/articles/tech/815885.htm 微软 ...
- 用户体验评价——win10自带微软拼音输入法
目前正在使用的一款输入法就是win10自带的微软拼音输入法, 用户界面,一直在用个人感觉最大的特点就是十分简洁,界面的布局十分清晰,可以隐藏悬浮窗让他显示在菜单栏, 另外其记住用户输入习惯方面也十分优 ...
随机推荐
- Kubeadm部署高可用K8S集群
一 基础环境 1.1 资源 节点名称 ip地址 VIP 192.168.12.150 master01 192.168.12.48 master02 192.168.12.242 master03 1 ...
- Ubuntu安装错误 server64 busybox-initramfs安装失败
因为想试试在Linux系统上爆破 所以安装了一下Ubuntu.第一次安装包报了个server64 busybox-initramfs.在安装系统那边.我一直还以为是我磁盘分配错了. 后来在网上找了资料 ...
- 齐博x1fun实例 鉴于很多人问列表的筛选怎么放到首页、内容页等等地方 贴出方法
application\common\fun\Field.php 你可以复制一份 也可以直接改 直接改记得加锁 不然升级就覆盖了 我们把 public function list_filter($ ...
- 如何检查“lateinit”变量是否已初始化?
kotlin中经常会使用延迟初始化,如果要校验lateinit var 变量是否初始化.可以使用属性引用上的.isInitialized. 原文中是这样描述的:To check whether a l ...
- Linux--多线程(二)
线程的同步和互斥 基本概念 概述:现在操作系统基本都是多任务的操作系统,同时有大量可以调度的实体在运行.在多任务操作系统当中,同时运行的多个任务可能: 都需要访问/使用同一种资源 多个任务之间有依赖关 ...
- JMETER与它的组件们
JSON提取器与Debug Sampler 我们平时会遇到很多JSON格式的接口返回,我们需要提取参数可以用JSON提取器,同时配合自带的调试器来进行调试. JSON提取器 Name of crea ...
- 【单元测试】Junit 4(二)--eclipse配置Junit+Junit基础注解
1.0 前言 前面我们介绍了白盒测试方法,后面我们来介绍一下Junit 4,使用的是eclipse(用IDEA的小伙伴可以撤了) 1.1 配置Junit 4 1.1.1 安装包 我们需要三个jar ...
- golang实现一个简单的http代理
代理是网络中的一项重要的功能,其功能就是代理网络用户去取得网络信息.形象的说:它是网络信息的中转站,对于客户端来说,代理扮演的是服务器的角色,接收请求报文,返回响应报文:对于web服务器来说,代理扮演 ...
- hwlog----hwlog_adaptor.go
// Copyright(c) 2021. Huawei Technologies Co.,Ltd. All rights reserved.// Package hwlog provides the ...
- i春秋时间
打开题目就是一段php代码 大致的意思是 ------------------------------------------------------------------------------- ...