在任意Win 10 Mobile手机之间备份、还原、转移微信聊天记录

最近要换下老1020,想转移微信的聊天记录到新手机650。因为windows phone的微信已经去掉了聊天记录迁移功能,“甄心cherish”琢磨出了手工搬运聊天记录的办法,在此致敬先。但该方法必须要新老手机都支持SD卡,对无SD卡的手机比如1020就没辙了。琢磨折腾了一番以后,终于成功从1020迁移出了聊天记录。留下步骤供需要的朋友参考。转载请注明出处。

首先声明:

  • 这个方法在我的手机测试有效:老手机Lumia 1020,系统是windows 10 mobile release preview发布预览版,版本号10586.164。新手机是Lumia 650,系统是windows 10 mobile fast ring快速通道预览版,版本号14379。理论上这个办法可以通用各种机型但只是理论上。
  • 需要对手机完全越狱。过程中可能会产生各种各样的问题,若操作不当不慎不仅可能不能备份出记录,甚至可能导致手机变砖数据全部丢失女朋友翻脸等等严重问题。对操作引起的一切后果本文及作者不承担任何直接或间接责任。
  • 我会尽量确保不错过任何重要细节,但这不是一个手把手教程。假设你认识基本的英文单词,具备一定的思考摸索能力。纯伸手党建议还是止步吧。

所用到的文件

http://pan.baidu.com/s/1qYpJ8OO

老手机(1020为例)操作步骤

我们的目标是突破系统限制,访问手机内部存储的被隐藏的文件。从中复制出微信的记录文件。

解锁(Interop unlock)

  • 在电脑上安装Windows Phone SDK 8.0 (https://www.microsoft.com/zh-cn/download/details.aspx?id=35471
  • 打开手机上的开发者模式,设置->更新和安全->面向开发人员->开发人员模式。
    wp_ss_20160719_0001
  • 装完WP SDK 8.0,会得到Windows Phone Application Deployment 应用程序部署工具,使用该工具向老手机里部署vcReg 1.5。
    wpad80
  • 部署成功以后在手机上运行vcReg1.5。点右下角的三个点弹出菜单,选择templates。
    wp_ss_20160719_0003
  • 勾上Live Interop / Capability Unlock,点Apply。
    wp_ss_20160719_0002
  • Live Full FS Access不是必要的,如果打开,手机连上电脑以后(MTP模式)可以访问的文件夹会多,但其实没什么用,真正我们想要的东西从MTP模式还是访问不到,原来几个Music、Videos什么的反而不好找。由你决定要不要开。

获取完整文件访问权

这一步有点变态,原理上是在手机上运行一个SFTP服务端,用电脑作为SFTP客户端连进手机来访问全部文件的。(原帖地址:http://forum.xda-developers.com/windows-10/windows-10-mobile/guide-filesystem-access-sftp-windows-10-t3185766

  • 回到vcReg主界面,Path里填入:System\Currentcontrolset\control\ssh\sirepuser
  • 然后按照下面的列表,逐一写入注册表键值。一行一行的来,填入Key以后先点一下Read,如果能读出一串值说明Path和Key是对的,然后填入对应的Value,点一下Write写入。再点击Read读出一下,确认值有被成功写入。以下名值对应的格式是[Key] => [Value]
    stfp-home-dir => C:\
    default-home-dir => C:\
    sftp-mkdir-rex => .*
    sftp-open-dir-rex => .*
    sftp-read-file-rex => .*
    sftp-remove-file-rex => .*
    sftp-rmdir-rex => .*
    sftp-stat-rex => .*
    sftp-write-file-rex => .*
    wp_ss_20160719_0004
  • 完成以后退出vcReg,进入开发者模式,打开设备门户下面的2个开关,点击配对,弹出配对密码。(下图只是示例,每次密码会不同,不要照抄截图里的)
    wp_ss_20160719_0005
  • 在电脑上运行WConnect,根据你的实际情况,通过USB (“wconnect usb”)或者wiif (wconnect 手机的ip地址)来连接你的手机。过程中需要输入手机上显示的配对密码。
  • 完成后到电脑的 %USERPROFILE%\appdata\local\Microsoft\WConnectSrv 路径下(直接复制这个地址进资源管理器即可),应该可以看到一个叫 privkey.pem 的文件。注意我实际操作中,wconnect步骤会报个错,但后来发现实际上仍然拿到了这个文件。如果你wconnect也报错,只要看到有这个文件即可。报错可忽略。
    wconnect
  • 电脑上运行PuttyGen,选择Conversions -> Import Key,导入刚才获得的privkey.pem文件,Okey以后回到PuttyGen,选择Save Private Key。然后会生成一个.ppk文件。
  • 运行Pagent,点击Add Key,选择刚才生成的.ppk文件。然后不要关闭Pagent,让它持续运行。
  • 电脑端打开WinSCP,新建一个连接,进入高级设置。
  • 在SFTP菜单下将Preferred SFTP Protocol version设成2。
  • SSH -> Authentication,勾选Allow agent forwarding,并且在下面的文件路径对话框中选择刚才生成的.ppk文件。
  • 保存设置。
  • 回到WinSCP主界面,输入手机的wifi ip地址(也就是在手机上的面向开发人员界面里显示的ip地址),用户名填 Sirepuser,密码留空。
  • 连接,你会看到一个报错信息提示你没有权限浏览/C/什么的,忽略它。在空白区域点鼠标右键,选择Goto Folder即可畅游手机的整个儿文件系统。你可以先从/C/Data玩起。(注意部分手机在锁屏时会断开wifi,解锁屏幕后重连即可)
  • 省得你慢慢找,微信的文件夹就在/C/Data/Users/DefApps/AppData/Local/Packages/下那个叫TencentWeChatLimited.xxxx_xxxx/LocalState/storage的路径下。
  • 该路径下有你登陆过的微信的帐号,进入你想要备份的那个帐号,下面就是你所有的微信记录文件了。其中真正重要的是/db/database.sdf文件,它保存着所有文字聊天记录。把这个文件复制到电脑本地。如果提示不能读取,在手机上彻底退出微信后重试。
    wpwechatdb

新手机(650为例)操作步骤

这部分参考了“甄心cherishm”的办法。(原帖:http://weibo.com/p/1001603961635646615019

  • 安装微信在SD卡上并且登录一次。
  • 彻底退出微信。
  • 手机通过USB连接电脑,通过PC将文章提供的附件里的(file)拷贝到手机SD卡根目录下。将从老手机复制出来的database.sdf文件复制到手机上的任意一个文件夹里,比如downloads。
  • 断开手机和电脑的连接。
  • 在手机上打开“文件资源管理器”,选择你复制到卡里的Database.sdf。长按选择“复制到”,复制位置通过附件(file)打开,然后进入TencentWeChatLimited***->LocalState-> storage -> 你的微信账号名 -> db。将备份的文件夹复制到该路径下覆盖掉原有文件。(PS:如果此时点击file无反应,尝试双击。)
  • 重新进入微信,你的聊天记录应该已经恢复。
  • Database.sdf只恢复所有的文字信息。图片、语音、小视频以文件形式存在于其他路径下,可以用同样的方式复制出来并且恢复到新手机里,有空的话可自行尝试。
  • 如果新手机是不支持SD卡的,理论上也是可以恢复的,只是就必须同老手机一样越狱,获取完全访问权限。

 

Share

发表评论

电子邮件地址不会被公开。

Time limit is exhausted. Please reload CAPTCHA.