不知道有多少人和我一样用的蓝牙鼠标或者键盘,有的话应该都会遇到同一个问题:即在一个系统下配好对后在另一个系统必须重新配对才能使用,很是麻烦.还要将蓝牙设备进入发现模式,OS下搜索,连接....终于昨天在一个老外网上看到了解决方法,写出来分享一下.
原贴地址:http://www.insanelymac.com/forum/index.php?showtopic=268837
原作者已经写的很详细了,我这里就只做翻译~

原理:这个问题的实质原因是,由于蓝牙是一对一传输,当OS连接蓝牙设备的时候,会随机生成一个link ID(可以理解为连接识别码),Win 和Mac 用的是不同的link ID。而每次配对都会改变其link ID,所以才导致不同OS的蓝牙不能公用,即使是一个电脑的蓝牙芯片也不可以。P.S: 不过Ubuntu 就没有这个问题,不管win/mac 的蓝牙都能用,赞一个!

问题本质清楚了,解决方法就很简单了。首先需要在两个系统下都要对蓝牙设备配对,用来生成同一设备的不同link ID,然后把两个系统的ID改成一样的就好了~ 原贴是先在Windows 下配对,然后去Mac 配对。这里的顺序一定不能变,因为我们最后要在Windows 下改link ID。(当然你如果知道怎么在Mac 改可以无视这句)

连蓝牙我就不多说了,Windows 下配完对,重启进Mac 系统,再配对。所以现在你可以在Mac 下用你的蓝牙设备。

Mac 下查看link ID:
打开终端,输入以下口令

  1. sudo defaults read /private/var/root/Library/Preferences/blued.plist

复制代码

然后屏幕上会出现几行代码,我们要找的link ID 是32位的16进制数字(比如:98542ff9 88e19449 475250e1 3943255b)

Little Ending to Big Ending:
这一步极其重要。因为Mac是以Little Ending 储存数据,而Windows 是以Big Ending 储存的。所以我们要进行数据格式的转换。其实规则很简单,原则就是从右往左读,一次两个16进制数。比如Mac 下显示ID 为

  1. 98542ff9 88e19449 475250e1 3943255b

复制代码

则转换成 Big Ending 就是

  1. 5b 25 43 39 e1 50 52 47 49 94 e1 88 f9 2f 54 98

复制代码

这里空格可以忽略,只是为了大家看着方便。现在Link ID 已经到手,重启进Windows~

Windows 下修改Link ID:
我们最开始已经连过蓝牙设备到Windows 了,所以现在设备那里会显示你的鼠标或键盘。但是因为我们之后又连过Mac,所以现在应该是不能用的(不然我也没必要写这篇文章)。下一步我们要修改Link ID,而它就在注册表里。但是这个Link ID是被保护的,如果直接打开注册表是不能编辑的,甚至看都看不到。所以这里需要另外一个工具 PSTools
<ignore_js_op> PSTools.zip (1.53 MB, 下载次数: 1248)

随便下到哪里都行,解压缩。然后以管理员身份运行命令行,cd 到解压缩之后的 PSTools 文件夹,输入以下口令:

  1. psexec -s -i regedit

复制代码

然后在打开的注册表里找到

  1. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\BTHPORT\Parameters\Keys\(蓝牙适配器地址,不是你蓝牙鼠标/键盘的地址)

复制代码

<ignore_js_op> 
在右边的注册表项点右键-〉修改二进制值
<ignore_js_op> 
把原来的数值全部删除先,然后输入你转换过得Big Ending 格式的Link ID,点OK。你的设备就可以用了!(不需要重启)

次方法非一劳永逸,每次添加新的蓝牙设备都必须重新按此文章修改一次~ 如果有更好方法欢迎分享~~

解决Windows 与Mac 双系统下的蓝牙设备共用的问题的更多相关文章

  1. Windows和Linux双系统下完美卸载linux

    装了Windows和linux双系统的朋友,在后期要删除linux是个比较头痛的问题,因为MBR已经被linux接管,本文的目的是如何在windows 和linux双系统下,简单,完美地卸载linux ...

  2. mac双系统下ubuntu卡在开机密码登录界面卡死

    背景:开机黑屏卡在,dev/sda1: clean, 552599/6111232 files, 7119295/24414464 blocks,修复完这个问题之后,出现桌面卡死,光标鼠标键盘全部失灵 ...

  3. windows和linux双系统删除linux

    装了Windows和linux双系统的朋友,在后期要删除linux是个比较头痛的问题,因为MBR已经被linux接管,本文的目的是如何在windows 和linux双系统下,简单,完美地卸载linux ...

  4. 双系统下(Ubuntu + win7)windows 无法连接无线网络

    双系统下(Ubuntu + win7)windows 无法连接无线网络 今天开机登录win7,突然发现无法使用无线网络(WiFi信号标志有个大红叉),于是查看设备驱动,一切正常,这就奇怪了:用Wind ...

  5. win7/ubuntu双系统下,如何恢复成win7引导及卸载ubuntu

    电脑原来是win7系统,后来通过硬盘安装了Ubuntu,同时把Ubuntu设置成了开机引导项(开机时选择操作系统的界面成了紫色背景白色字体的界面),ubuntu引导开机的缺点是将来要卸载Ubuntu时 ...

  6. 硬件时间,操作系统时间,Windows 和linux 双系统时间差8小时问题说明

    1.硬件时间:硬件时钟是存储在主板上CMOS里的时间即BIOS时间,关机后该时钟依然运行,主板的电池为它供电.对应于嵌入式设备有一个RTC模块.硬件时钟即RTC时钟.信息比较少没时区.夏令时的概念. ...

  7. Windows、Ubuntu双系统重装windows系统后grub引导的修复及默认启动项的修改

    今天帮童鞋重装系统,他的电脑是Windows.Ubuntu双系统,需要重装的系统是windows,据说是因为很多游戏都只支持64位,要给换成64位的 = =...      于是我就帮他装了个wind ...

  8. 安装Windows 和 Linux双系统(vmware) Centos7

    这里我安装的是Windows + Centos 7,如果是要安装Centos 6,步骤一样 一.安装Windows和Linux双系统需要先安装Windows然后安装Linux 解释:这里解释下为什么要 ...

  9. Mr.Jin系统发布报告——WIN7 WIN8双系统下的学习模式系统

    Mr.Jin系统发布报告           本文由Mr.Jin原创发表于博客园.CSDN论坛 http://www.cnblogs.com/CHPowerljp-IT/p/3463850.html ...

随机推荐

  1. P1308-道路修建 (noi 2011)

    题目描述 在 W 星球上有 n 个国家.为了各自国家的经济发展,他们决定在各个国家 之间建设双向道路使得国家之间连通.但是每个国家的国王都很吝啬,他们只愿 意修建恰好 n – 1 条双向道路. 每条道 ...

  2. JQuery序列化表单serialize() 以及 serializeArray()

    都是利用form表单传递数据的 1.serialize()方法 描述:序列化表单内容为字符串,用于Ajax请求. 数据类似于这种: FirstName=Bill&LastName=Gates  ...

  3. 13.组合查询--SQL

    利用UNION操作符将多条SELECT语句组合成一个结果集. 主要有两种情况需要使用组合查询: 在一个查询中从不同的表返回结构数据: 对一个表执行多个查询,按一个查询返回数据. UNION规则 UNI ...

  4. HDU-2119-Matrix(最大匹配)

    链接:https://vjudge.net/problem/HDU-2119#author=Smilencer 题意: 众所周知,tyz是一个写bug小能手,以至于如果没有队友的帮助,就ac不了程序. ...

  5. loj#6169. 相似序列 hash+主席树

    因为他的相似是在排完序下的 那我就在排序的情况下hash啊 这怎么hash啊 主席树啊! 没了 #include <bits/stdc++.h> #define MAXNODE 50000 ...

  6. Spark Mllib里的分布式矩阵(行矩阵、带有行索引的行矩阵、坐标矩阵和块矩阵概念、构成)(图文详解)

    不多说,直接上干货! Distributed  matrix : 分布式矩阵 一般能采用分布式矩阵,说明这数据存储下来,量还是有一定的.在Spark Mllib里,提供了四种分布式矩阵存储形式,均由支 ...

  7. 获取spring里的bean

    ClassPathXmlApplicationContext applicationContext = new ClassPathXmlApplicationContext("spring. ...

  8. P4874 回形遍历 —模拟

    思路: 写完后信心满满,结果超时. 我很不解,下了个数据结果——,z竟然是大于1e10的,跟题目给的不一样啊 原来如此,正解是一行一行的走的... 注意当到两边一样近时,应优先向下和右!!!!!! 这 ...

  9. ABAP系统字段

    SY是一个全局的结构体变量,在词典中已定义过.输入SE11到ABAP字典中. 输入SYST点击显示 附录D 系统字段功能列表 字段名 类型 长度 应用目的 说明 ABCDE CHAR 26 常量 字母 ...

  10. div嵌套时,子元素设置margin-top失效问题

    这是因为父元素的padding设置为0时所产生的bug,它自动将margin-top提升到了父元素上,所以此时我们所设置的margin-top自动就到父元素上了,解决方案: 1.给父元素添加一个pad ...