我在可用的时间内尽可能多地搜索了这个,但没有提出任何建议。有没有人知道是否有可能以编程方式访问从WinMo设备备份到Microsoft的MyPhone服务的数据,而无需将所有数据恢复到设备?我正在寻找一种在我的桌面计算机上保留联系人和SMS消息的本地备份的方法,但似乎如果有这样做的API,微软根本没有做广告。
我希望我无法在Google上找到任何参考资料是因为我的无能而不是微软不支持。
答案 0 :(得分:1)
我知道这已经很晚了,但我遇到了同样的问题,我找到了一个解决方法。为此,您需要从IE登录MyPhone,以便代码可以使用身份验证cookie。登录时,请选中“记住我”复选框。然后,只有一米使用该cookie的HTTPRequest。从此处开始,您需要解析响应HTML并“手动”提取所需的信息。
我正在研究这个问题,因为我的Win 6.5手机被盗了,我转而使用Android,因为我不能将Win 7手机视为成品,我需要恢复我的联系信息。
我没有太多时间投资这个小项目,但我希望它能在几天内完成。这个小程序最终可以保存包含MyPhone Web应用程序中所有联系信息的csv文件。
我将分享代码,因此任何想要使用它或进行进一步更改的人都可以免费使用。
到目前为止,这是一个为您提供开始的片段:
string siteUrl = "http://sn1-p1.myphone.microsoft.com/mkweb/storage/Contacts.po";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(siteUrl);
request.CookieContainer = new CookieContainer();
List<Cookie> cookies = new List<Cookie>();
StreamReader sr = File.OpenText(@"c:\Users\user\AppData\Roaming\Microsoft\Windows\Cookies\user@myphone.microsoft[2].txt");
while(!sr.EndOfStream)
{
string name = sr.ReadLine();
string value = sr.ReadLine();
string domain = sr.ReadLine();
string capacity = sr.ReadLine();
sr.ReadLine();
sr.ReadLine();
sr.ReadLine();
sr.ReadLine();
if(!sr.EndOfStream)
{
sr.ReadLine();
}
var cookie = new Cookie(name, value, "/", "myphone.microsoft.com");
cookies.Add(cookie);
}
foreach (var cookie in cookies)
{
request.CookieContainer.Add(cookie);
}
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
using (StreamReader reader = new StreamReader(response.GetResponseStream()))
{
string tmp = reader.ReadToEnd();
}
答案 1 :(得分:0)
经过一番挖掘后,我在MyPhone用户论坛上找到了一个参考,说明这种操作没有公共API。