Extending "Windows 8" apps to the cloud with SkyDrive


Building on the recent post about signing in to Windows 8 with a Windows Live ID, we wanted to talk a bit about using SkyDrive from within new Windows 8 Metro style apps. While apps get some amount of “automatic usage” of SkyDrive to roam settings, and the apps themselves roam, we know developers are anxious to make it easy for customers of their applications to have data they create roam easily across devices. SkyDrive is a great way to do this as every Windows Live ID has a free cloud-based drive. This post talks about how developers can build Metro style apps that use SkyDrive storage from within the apps.This is our first post with code–expect more of those! Mike Torres, the group program manager of the SkyDrive Devices and Roaming team, authored this post. –Steven

Despite the trend towards multiple devices per person, many people still store all their important files on a single PC or storage device, and don’t have access to them from their other devices. These files are associated with a “place” – a desktop PC, a laptop, or a USB key. If you don’t have access to that place, you don’t have access to your documents or photos. Not only is accessing your files difficult (or sometimes impossible), sharing them with someone on a different network can be just as tricky.

Now, the cloud is making it possible (and easy!) for people to access their content from almost anywhere. Files are kept in a single place and are accessible from any device that connects to the internet from anywhere in the world. Sharing photos and collaborating in real-time on documents has also been made easier by having a single copy of the file in the cloud. However, the cloud has not yet reached mainstream usage for accessing content.

At the //build/ conference opening keynote, Chris Jones talked about how every Windows 8 customer will get a SkyDrive: a single cloud for everyone, where a person’s important files are centrally available, instantly accessible, and ready to share. There were also sessions during the conference covering how Windows 8 developers can cloud-power their apps through Live Connect and the Live SDK. When used together, Metro style apps can use the Live cloud to enable single sign-on with Windows Live ID and access personal data like documents, photos, and videos on SkyDrive with the user’s permission.

If you’re thinking about developing a Metro style app for Windows 8, this post shows how to enable single sign-on and access a user’s data on SkyDrive to make your Metro style app more personal – with the user’s consent, of course.

Connecting your apps to the Live cloud

As a developer, when you set out to build the world’s next great app, there are two classes of problems you’ll repeatedly face on any platform:

  • Enabling sign-in and sign-up for users. Users dislike having to sign in to websites and apps, yet developers know that engagement and loyalty to their app increases after a user has signed in. Sign-in allows you to personalize the user’s experience and to have your app remember the user’s data and customizations.
  • Easily bringing the user’s content into your app to power your experience. Seemingly simple tasks like asking the user to set a profile picture can quickly get complicated when you consider that users have their photos spread out across disparate devices and the cloud.

In Windows 8, we’ve addressed both of these problems for our own apps like Photos and Mail, and your Metro style apps are able to use the same platform and technology. Specifically, this is how we’ve addressed the above problems:

  1. The user’s cloud-based identity is now an OS primitive that is universally accessible to apps & websites with user permission for single sign-on. This means your app can inherit the signed in state of a user and their identity, and you don’t have to worry about a separate authentication process. This becomes especially important to enable #2.
  2. We’ve made access to the user’s content in the Live cloud available to apps using industry standard protocols such as OAuth for authentication & authorization, JSON as payloads for the data returned when accessing SkyDrive and Hotmail, and XMPP for interoperability with Windows Live Messenger. In addition, we offer the Live SDK for Windows 8 Developer Preview to make development on the WinRT easy, with integration into Visual Studio 11 Express.

After the first time a user connects your app to their Windows Live ID, the user will always have a seamless single sign-on experience from any Windows 8 PC where they are signed in with a Windows Live ID. The same extends to your website, where they get a single sign-on experience if they are signed in to their PC with a Windows Live ID or signed in to any site that supports Windows Live ID, such as Hotmail or SkyDrive.

The easiest way to use single sign-on with Windows Live ID and integrate SkyDrive content into your Metro style app is to leverage the Live SDK.

This does not mean that your application needs to use any of these services—their use is entirely up to the developer. There’s no requirement that apps for Windows 8 sign on with a Live ID or use any specific cloud-based storage. These are simply services available to app developers to use as they choose.

Using the Live SDK in your app

First, if you haven’t done so already, you’ll need to install the Windows 8 Developer Preview and the Live SDK Developer Preview on your PC. This also installs Microsoft Visual Studio 11 Express for Windows Developer Preview. Second, you’ll need to visit the Windows Push Notifications and Live Connect app management site to configure your Metro style app to access the Live cloud. Follow the steps on the site to register your app to use Live Connect.

After your app is configured to use Live Connect, you’ll need to add a reference to the Live SDK. The Live SDK is available for development in C#, JavaScript, and VB. You can add it to your project by right-clicking the Project and selecting Add Reference, selecting Extension SDKs and from the list, and then selecting the entry for the Live SDK as shown below:

In a JavaScript application, you just need to add the following script reference to Default.html:

    <script src="ms-wwa:///LiveSDKHTML.5.0/js/wl.js" ></script>

In C#, you should add the following reference to be able to leverage the Live SDK in your code:

 using Microsoft.Live;

And in VB, the following import statement is all it takes:

 Imports Microsoft.Live

This is just a good example of how we support programming in the language of your choice when building Metro style apps for Windows 8.

Using Windows Live ID in your Metro style app

To take advantage of Single Sign On (SSO) in your app, you’ll need to place a sign-in button somewhere in the app. When the user clicks the sign-in button, they will be automatically signed in if they are signed into their PC with a Windows Live ID, otherwise, they’ll be asked to sign in. After that the user is asked to provide consent to your app to access their data such as their SkyDrive photos. This workflow is handled automatically for you by simply adding the sign-in button. Notice that your customers still confirm sign-on to your application and are not automatically signed on—this is an important design consideration.

This is sample HTML for the sign-in button (note that it’s just a DIV and will need to be configured).

 <div id="signinbutton" style="width: 251px; margin-left: auto; margin-top: 40%; height: 64px; top: 0px;"></div>

Once you’ve added the sign-in button to the page, you’ll now have to hook it up since all the sample HTML did was allocate space for it on the page. And we need to configure that sign-in button with the scopes that your app needs. A scope defines what the app will have access to, and what the user has to agree to provide. To access SkyDrive data, your app will need these two scopes:

  • wl.signin – This scope enables automatic sign-in to your app.
  • wl.skydrive – This scope grants read access to the user’s SkyDrive albums and photos (note: your app should use wl.skydrive_update if you plan to upload content to SkyDrive).

This is sample JavaScript code for initialization, assuming that you’ve already created the sign-in button on the page with the id “signinbutton”:

function init() {
WL.init();

WL.ui({
name: "signin",
element: "signinbutton",
scope: ["wl.signin", "wl.skydrive"],
});
}

And this is sample JavaScript code for handling login:

WL.Event.subscribe("auth.login", onLoginComplete);

function onLoginComplete() {
var session = WL.getSession();
if (!session.error) {
signedInUser();
}
}

When the user clicks the sign-in button, they are asked to grant consent to allow your app to access their data. As noted earlier, if the user is signed into their PC with a Windows Live ID, then single sign-on is in effect and the user doesn’t have to sign in again. Instead they go directly to this consent screen:

Accessing SkyDrive content from your app

Once the user has granted access to their data to your app, OAuth 2.0 access tokens are returned to your app, and can then be used to make RESTful API calls against the Live cloud. Here’s what the code to access a photo looks like in JavaScript:

function downloadPicture(folderId) {

var path = folderId + "/files"

// Submit request
WL.api({ path: path, method: "GET" }, onEnumerateFolderComplete)

};

With a number of the above calls, an app can embed SkyDrive content into their experience such as PowerPoint slides, videos, Excel spreadsheets, or just plain photos, as shown below in a sample app.

As you can see, integrating single sign-on and user data from SkyDrive into your app requires just a few lines of code with the Live SDK. Your app will be more personal and can take full advantage of a user’s photos or documents in the cloud. The full source code for the sample app shown in this blog post can be downloaded from here.

For more information about using the Live SDK to enable single sign-on in your apps and take advantage of the SkyDrive APIs, watch Dare Obasanjo’s session, Power your app with Live services and Steve Gordon’s session, The complete developer’s guide to the SkyDrive API from the BUILD conference. You can also learn more by checking out http://dev.live.com and downloading the Live SDK Developer Preview. Happy coding!

Mike Torres

Comments (88)

  1. Jote says:

    I might be missing a point here, but wouldn't it be easier to just provide native access to skydrive using a drive letter so that application does not really have to know if it's accessing a local storage or SkyDrive (much like mapped network drives work)

  2. GoodWill says:

    A little off-topic: Please take a look at http://www.microsoft.com/…/09-21OEMFallDevices.mspx or any microsoft-presspass webpage, at the top there written "Click here to Install Silverlight" while there is no Silverlight on the page and I have installed the latest SL5RC in my computer but still !! Please fix this critical issue :-)

  3. mt327000 says:

    This looks like an impressive feature. The Windows Live integration will be a huge benefit to users with multiple computers or those who need to travel a lot.

    Keep up the good work!

  4. When can we expect to be given the possibility to pay for more space on SkyDrive? Are plans coming soon? Have I heard from a Wave 5?

  5. Alfie Burgh says:

    I have seen the 'Messages', 'Photos', and 'Mail' apps in Windows 8. Do these replace Windows Live Messenger, Photo Gallery, and Mail? I think that would be a good move. Keep up the good work!

  6. Francesco says:

    I think this is great, but I think I won't use Windows Live in my apps, I'll use Facebook login, a lot more reliable and with 800 millions of users.

  7. Moth25 says:

    I don't think most users will trust their files to 'the cloud' until cloud vendors can have a EULA that doesn't give the vendor rights to data mine the users' files, and can ensure privacy from hackers (including the government) and availablity.

  8. PhilB says:

    Regarding sharing files and photos between application, how does skydrive integration go beyond what can be done with the file picker and the 'pickers' contract?

  9. Stefan says:

    If i don't use Live at all and use f.ex Zoho ? Google ? A.s.o. I haven't used Live since my Hotmail account were deleted due to i was blamed for piracy with mp3 – sure a DJ that don't recieve and send mp3's ! All this integration with LIve i think is the wrong way to go. Why not start to support other online services to ? Why only bloated Microsoft services ?

  10. ReleaseWin8BeforeIpad3 says:

    Agree with the following comment left above.

    >>I might be missing a point here, but wouldn't it be easier to just provide native access to skydrive using a >> drive letter so that application does not really have to know if it's accessing a local storage or SkyDrive >> (much like mapped network drives work)

  11. Antitrust? says:

    So MS will soon be getting complaints from other cloud providers? This "skydrive" needs to be replaced by a pluggable interface and I get to decide which provider I choose. That is the advantage of windows, it runs all my programs.

    And then francesco can send all his personal data, logins and other information to facebook. They probably know him better than he does anyway ;-)

  12. davidacoder says:

    Wow, I think this is the worst news so far about Win8. Here is how it should be: you should finally merge Mesh and Skydrive. Then from an app dev view I don't need to write extra code to store stuff in Skydrive, my existing code that stores stuff on disc will just work. I also REALLY don't see why anyone would save important files on Skydrive with this model: no offline access, that really is pretty much a bummer.

    So right now you expect app developers to a) write extra code that is Skydrive specific to save stuff on Skydrive, b) have ZERO user interface support for this. Are devs supposed to write their own common file dialogs for this Skydrive integration?? How is this supposed to look, like to save commands, one for local one for Skydrive? When I want to open a file, will I have to FIRST decide whether I want to open from Skydrive or local disc, and then get common file dialogs for disc, and crappy app specific UI for Skydrive??

    If this is really the plan for Win8/Skydrive/Mesh, then I can very well understand why Ozzie left MS.

    On the other hand, there is hope: if rumors are right we might finally get the Google Drive. Maybe they will get it and provide something that is seemlessly integrated. If they provide the sync solution, then instantly EVERY Windows app that can read and write files to disc are GDrive enabled, and the Skydrive solution will never take off.

  13. Bryan S. says:

    As an amateur game developer, I'd love to be able to transfer saved games between different computers or devices. So, this is a great feature, over all.

  14. I like the idea of this leveraging of the Skydrive.  Does the 'Microsoft.wl' library have a hashing system built in, so if I do save application data there, I can insure that no other applications read/change it?

  15. Jack says:

    It seems like this kind of storage could potentially eat up a user's SkyDrive allocation. What will the consumption of the average app be? Will there be limits on what an app can store in the cloud?

  16. Stan says:

    Please PLEASE can you make a Windows 8 Suggestion Box, like Windows Phone's? There are so many ideas and features people are suggesting on Twitter or blogs comments… I can assure you that doing so will led you to make the best operating system ever.

  17. Dylan B says:

    I'm not quite sure why there are so many bad comments about this. Sure it's for Live only, but that doesn't matter because if you were desperate to have your data on Google instead then using the share interface with a Google metro app will let you have it there. Sure it won't be in sync, but you get the live storage for free, of course their will be some caveats. If this was Google storage they'd probably be scanning your file for Ad suitable words. That's fine, that's the price for using Google services and how they keep them free.

    Look at the Chrome OS and see how many hooks for Live storage there are there.  

    For the majority of windows users who aren't technically proficient and don't care about Google storage or Amazon storage etc. this is a big win. The files you use will be available on any Win 8 computer you use without you having to do anything. This is the key to a lot of things that are announced about windows 8, it's similar to the win phone premise that the software should work the way you work, not you having to work the way software works

  18. Eric says:

    Someone else said they didn't like that sky drive files will not be synced with computers, It was not clear to me whether or not that's true.

    I agree that I'd like to be able to sync copies of any sky drive files onto the computer or computers of my choice so that I can either work online or offline.

    I've been using dropbox and really enjoyed what it does :)

  19. @Alfie, @Dany, @davidacoder: Of course we can't comment on future plans, but thanks for the suggestions.

    @Antitrust?, @Stefan: This is just one option for developers.  Developers can always choose not to use this, or to integrate any cloud service they would like into their apps.  It's completely up to the developer.

    @PhilB: Contracts and pickers are great for passing data between apps.  Think about this API and SDK as making it possible to build immersive experiences on a *set* of SkyDrive data from within your apps.  i.e. you want to build a photo album viewer.

    @Jote: Good question.  We wanted to expose SkyDrive with the appropriate consent flows so the developer can *only* access SkyDrive data once the user has approved, and the user has control about where their data flows.  And it was important for us to use industry standard protocols like REST and JSON as well, making it possible for web developers to take advantage of these APIs from their sites too.

    @Joe, @Jack: If you want to roam app-specific settings, that's provided by WinRT and has app isolation/sandboxing.  This solution is for user data like documents and photos and not app-specific data (like a DB or config file, etc.)  The limits for user data in SkyDrive are tied to the user's quota.

  20. pmbAustin says:

    I think some people are missing the point of this feature.  This is about enabling single-sign-on, and allowing applciation settings and "save-state" to flow through the cloud to whatever device the user is accessing the application from.  This isn't about opening "Save As" dialogs to save a file to the cloud.  This is about having transparent-to-the-user access to application state and settings, that "just works" across PCs and devices.

  21. This is great news!  I've been waiting for read/write to skydrive for ever.

    And…

    I am pretty confident that if MS doesn't do it, somebody could easily write a namespace extension for explorer that maps a skydrive.

  22. Fine, but …. there is NO WAY I will accept the lack of "Exit" button from ANY application, in ANY OS.  The new "way" may look fine on paper (same as communism), but when it comes to real life if fails.

    Also, since OS suspends any METRO application, it also means that (for example) a music/video player that goes out of focus will also get suspended and the music stops….Really?  I cannot browse the web and listed to my favorite music collection?  Obviosly I must be missing something, but I am not….OOPS!

  23. Josh says:

    > "I cannot browse the web and listed to my favorite music collection?  Obviosly I must be missing something, but I am not….OOPS! "

    Yeah, actually you are.  Look at how multi-tasking is handled in WP7.5 for an example.  By default an app is simply suspended but devs can opt into a more robust background execution model if it makes sense.  The key is that apps opt into it, so by default apps that don't need it aren't wasting battery life.  Same story here.

  24. bob says:

    Live in NYC where suppose to have the best wireless connections but, alas, don't.  Will there be any way to easily cache data locally, from file to relational, should internet connection not be available?  

  25. Techknackblogs says:

    Multiple devices per person is awesome through Windows LIve Id but what if your Windows Live Server is down??…will me as a User able to login to my Windows 8 tablet??

  26. sreesiv says:

    Superb!!! OAuth/WRAP and SWT are very elegant ways to get Authentication/Authorization behaviors for apps and sites. Wrap that up with a great cloud service like Live, you have the right recipe for success. Skydrive is super cool, I have been using it since its inception and is very impressive.

    One suggestion I have, is to have a mechanism to detect the files that the app uploaded. This would be useful for those who also use the web interface of the service.

  27. gawicks says:

    Awesome work . Now that Skydrive will become central to windows8,winphone perhaps you guys should consider letting the user add more storage to skydrive. and get rid of the awful 100mb per file limit

  28. Hi, just wondering, what will happen if power is cut when the device is downloading data for local use? Because it doesn't have time to clear on log off, does that mean people will have access to your information stored on windows live if this were to happen?

  29. aemarques says:

    @Boggy4062, you do realize that you are protesting about something in an OS version that it is not even in beta status, don't you…?

  30. FremyCompany says:

    I don't see the point of this API. You can't use it to store files in Skydrive nor browse the one that already are stored there. The only thing you can do is to upload new photos. It's not the main use case of SkyDrive. Anyway, the other uses cases seems to be buit-in in Windows 8 (Settings roaming, documents syncing…) so I don't care anyway.

    The "sign in" experience is kinda great, however.

  31. Joe H says:

    SkyDrive is great, but until it has an offline sync program will be pretty much useless for most of us (Live Mesh works well, but is only limited to 5GB for some unknown reason).

    Imagine how amazing SkyDrive would be if not only could you get online access to all your files, but you could also sync all your files among your devices / computers!!

  32. This is an awesome feature.

    I would suggest to add similar capabilities to the desktop API's.

    The live ID is used to log into windows itself, so I see no reason why we couldn't have desktop applications making use of this great feature as well.

    The entire "live cloud" should be accessible throughout windows when logged in with a live Id.

  33. I have been using SkyDrive for over a year now to store a huge amount of data on the cloud. Sometimes its difficult to search for the particular file you need among the many stored on it.  Can we have some sort of Search facility inbuilt in SkyDrive to make the search easier?

  34. Please , i want to say something about the Skydrive…

    MIcrosoft sill now a big potential to beat the OTHER…But they need to take this oppotunity and make it.

    @JOE H say….(sorry , i will use the Capital Letter to say it..)…so Joe H say :

    " IMAGINE HOW AMAZING SKYDRIVE WOULD BE IF NOT ONLY COULD YOU GET ONLINE ACCES TO ALL YOUR FILES; BUT YOU COULD ALSO SYNC ALL YOUR FILES AMONG YOUR DEVICES/COMPUTERS/TABLETS/PHONES:"

    If we have this, we will have the Perfektiion,  and the Word "CLOUD"  will have his real signification.

    In this case, you dont have to care about where exactly your files are…You JUST HAVE IT AND USE IT…

    Where you want, if you want…They will be always THERE….

    SO Microsoft , give us the perfektion

  35. One more word on Skydrive …

    The web browsing can be slow and latency periods are almost always present. In addition most of the users do not have good internet connections.

    Good timing would be the best way to fully benefit from Skydrive. In addition, this method of direct synchronization becomes independent of Hardwares. This method allows to reconstruct the data in all new or old equipment …

    The data will always be there … they are always on the cloud

  36. Icer says:

    I think this is a geat feature but why not just add the cloud drive as some sort of mapp drive or short cut on the desktop or somewhere. Also, allow for the user to choose a different cloud vendor as well.

  37. @Irfanfare: maybe I remember wrong, but I thought that the one of the features of the search function in win8 was the ability to search the cloud as well or through individual metro applications.

    So, if I understood that correctly, you should be able to write an application that makes use of your skydrive and then subscribe that application to the win8 search, which would then in turn be able to return search results from your skydrive through this app (and perhaps even directly).

    Interesting question though, would love some msft insight.

  38. @Icer

    Nice idea!  Indeed, it would be great to be able to "map" the skydrive in windows explorer!

  39. I completely agree that SkyDrive and Mesh should be integrated. For latency reasons, it is almost necessary to have a constant local replica of files on your local machine. For devices that don't have any extra space (like phones) the most recently used files should be replicated.

    Also, when it comes to integrating SkyDrive and Mesh it should be an option that I can push only the last x MB or x number of files that I've accessed to the SkyDrive and the rest just sync like normal using Mesh. This way I can conserve my SkyDrive space and keep the 100s of GB of data on my local machines but never have to worry about missing that one file that I'm working on when I'm on the road.

  40. Stefan H (UK) says:

    Whilst I'd like the option to use alternatives to SkyDrive (Dropbox being my current choice), it's somewhat understandable that Microsoft will wish to tie users to their service. I cannot imagine Microsoft or their OEM resellers being particularly happy if a user chooses the Dropbox option and then Dropbox screws up.

    Users will blame Microsoft or the reseller, not Dropbox.

  41. This is just probably me, but I miss the old good VB.net days and it's commands.

    For example, when reading a file I could say:

    my.computer.filesystem.readalltext(filelocation)

    You don't have to be a programmer to understand what the above code performs. But with all these xaml apps getting in, and now this article about skydrive I try to understand why that code coudln't be much easier.

    Why not make the code like this

    my.skydrive.filesystem.download(location/of/picture)

    Still it's short in length, but it makes the code easy. Not with all those { and } and (()). Just commands that anyone can understand. Sure I understand that in some cases we need extra capabilities, like r.readline but we are talking about simply downloading a file here.

    And the ways you've presented how Skydrive was IN windows, it shouldn't matter for the programmer to know it's comming from skydrive. I mean, why doesn't it work with openfiledialog1.filename? I as programmer never worry if it's comming from a C: drive or D: or a network drive. The idea is, a windows program makes the file selectable and returns the path the the program. Why should skydrive be any different from a developer perspective?

    I really hope, when this doesn't change, Microsoft releases working code snippets that can be copy and pasted, without issues. I'm not saying i'm a bad programmer, but things work so much easier when code is like a sentence.

  42. @FremyCompany: Your apps can use the Live Connect APIs to create, read, update, and delete a SkyDrive user's folders and files.

    @Arouch: Live Connect and the Live SDK cover Hotmail contacts & calendar and Messenger via XMPP as well.  Check it out.

  43. Sekhar Padikkal says:

    Agree with the following comment left above.

    >>I might be missing a point here, but wouldn't it be easier to just provide native access to skydrive using a >> drive letter so that application does not really have to know if it's accessing a local storage or SkyDrive >> (much like mapped network drives work)

  44. Sekhar Padikkal says:

    It may be expensive to you but please map skydrive to windows explorer! well that will be huge!!

  45. Funny says:

    With WP7 ManJoe update, we cannot delete the file from SkyDrive? What? Why? Whats the risk?

  46. Roger Martin says:

    I am disappointed the cloud resources won't be available through drive mapping (like E:) or UNC path. As the creator of Gallery Server Pro, that feature would be a huge benefit, as it would allow the gallery to manage SkyDrive resources as easily as it does network-accessible ones, and would work without touching the code. I imagine there are countless apps like this.

    Surely there is a way to handle the security concerns without requiring devs to use a custom API. Even so, I don't really understand the concern, as you are essentially saying there is a greater concern with an app accessing online resources than local ones. Why is that? Is a user more likely to store sensitive info online than on their own PC? Quite the opposite, I would suggest…

  47. Klimax says:

    I didn't spot answer. Will regualr programms (outside of Metro) able to access cloud storage like Metro?

  48. @Klimax: Yes, the API uses industry standard protocols.

  49. Really like the way it is designed for Metro apps. Splendid job Microsoft. But why all the love only to Metro apps? Windows 8 is looking more and more like a tablet-oriented OS. Where is SkyDrive access in Explorer through standard protocols like WebDAV or SFTP? With Live ID becoming the user's Windows account credentials, there is no better than time than now to implement 1-click Sign-in to SkyDrive through Windows Explorer and automatically mapping it as a drive letter. In fact, you can bundle a special namespace extension for SkyDrive in Explorer so only 100 MB files are allowed when we "paste" (upload) them. In you map a drive letter automatically with a neat namespace extension, the WebDAV re-director in Windows can also "Save as" to the SkyDrive.

    There are free third party apps already available today that map SkyDrive (and even other cloud services like Amazon S3) in Explorer like SkyDrive Explorer or Gladinet Cloud Desktop but a Microsoft-native SkyDrive namespace extension would be awesome-st thing. Please surprise us. Not mapping SkyDrive as a drive through a namespace extension is a kind of like missing the point.

  50. Drewfus says:

    @xpclient: "But why all the love only to Metro apps?"

    Having a wild guess; it's because conventions like %userprofile%appDataroaming and HKCUsoftwarevendorappName aren't accurate or complete enough to act as definitions of applications user state. Stuff like cache, temp, and machine and OS specific data can't be included in the sync, and presumably Metro apps are designed with this in mind.

    Btw, what overview of Metro apps is recommended from an administrators point of view?

  51. Mr.Windows says:

    @Steven Sinofsky:

    Nice feature there.

    OFFTOPIC:- Sir,I was searching for some old Windows Vista videos & found this & I think this was the best & the most natural UI Windows could ever but, YOU GUYS NEVER MADE IT….WHY DID YOU DO THIS??? I know it was not possible at that time to have a FUNCTIONAL UI like this (I have gone through the history of Windows Vista in Wikipedia) but,you guys COULD HAVE & SHOULD HAVE MADE THIS UI IN WINDOWS 8.The desktop UI of Windows 8 is really BORING & the same as Windows 7(a bit complex compared to Windows 7 actually) I hope you guys see this post & re-think about your desktop UI for Windows 8 a little bit more.

    Link :- http://www.youtube.com/watch

  52. Mr.Windows says:

    Sorry if I sounded a little harsh there but,you see I am a BIG fan of Windows & I hate to see how this beautiful UI never made it,please guys make this UI in as the desktop UI of Windows 8…a lot of Windows Longhorn fans are out there who are waiting to see this type of UI in Windows….Please,please,please.

    If you guys want,then you can hold a poll in this blog & see what other users think of this UI.

  53. ClaudioJr says:

    What About C++ Programmers who need to use this SDK for accessing Live services? Is it a WinRT component?

  54. Off topic:

    - Would it be possible for Microsoft to provide networking tools with a comprehensive UI for commands like ping, traceroute similar to what Mac OS does?

    It's not very user friendly to open command prompt.

  55. Thanks for the requests around the drive letter and access from Explorer.  It’s not a supported scenario today.

    We’ve looked into using protocols like WebDAV, SMB, and FTP to enable this in the past but, as you may have experienced with other services and tools, the performance characteristics aren’t great… primarily due to network latency.  Of course accessing files over the internet is different from accessing them on your LAN or external hard drive.  There are other ways to do this that we believe provide a better experience, for instance using sync on top of local files like we do today with Mesh.  Though it’s definitely clear the scenario of having access to your entire SkyDrive and not just specific synced folders is important to people – great and clear feedback, thanks again.

    @ClaudioJr: There is no C++ SDK at the current time.  From C++ you can directly access the SkyDrive REST APIs and authenticate the user via OAuth using WinRT.

  56. AndrewDover says:

    I agree with ClaudioJr that you need to support C++ applications who want to support SkyDrive.

    Mike Torres wrote:  "The Live SDK is available for development in C#, JavaScript, and VB" and

    "This is just a good example of how we support programming in the language of your choice

    when building Metro style apps for Windows 8"  Well, without C++ it is a bad example.

    But ok, the Live SDK is just the easy way denied to C++ developers. Is there an alternate?

    Mike Torres wrote:

    1.The user’s cloud-based identity is now an OS primitive that is universally accessible to apps

    & websites with user permission for single sign-on.

    Looks like he means the:

    Windows.Security.Authentication.Live namespace

    msdn.microsoft.com/…/windows.security.authentication.live(v=VS.85).aspx

    And it looks like "OAuth 2.0 access tokens are returned to your app" someehere in this API.

    Mike Torres wrote:

    2.We’ve made access to the user’s content in the Live cloud available to apps using industry standard protocols such as

    OAuth for authentication & authorization,

    JSON as payloads for the data returned when accessing SkyDrive and Hotmail,

    and XMPP for interoperability with Windows Live Messenger.

    So there is some description here:

    REST API, Windows Live SDK

    msdn.microsoft.com/…/hh243648.aspx

    Anyhow, please include a C++ example in your SkyDrive story.

  57. Anon says:

    So, please decide, is it called Live or Windows Live? Live SDK or Windows Live SDK? Live Hotmail or Windows Live Hotmail? Live Servic es orWindows Live Services? Decide and tell us please.

  58. @Anon says:

    Yo troll ! its both way… Live Hotmail or Windows Live Hotmail… doesn't matter! Like it doesn't matter if someone say iPhone or Apple iPhone! Like a said you are a dirty troll so it doesn't matter..

  59. Anon says:

    No, it does matter. When I say Xbox Live you realize that I am talking about the online services attached to Xbox. When I say Dynamics Live you realize that I am talking about the online version of Dynamics. When I say Windows Live something, you realize that I am talking about the online services that extend Windows. But when you hear Live Connect, what do you understand? Is it part of Windows Live, Xbox Live, Office Live or Dynamics Live?

    It also matters as it shows consistency and tidiness in branding as well as a level of professionalism reflected in the attention to detail.

  60. Anon says:

    No, it does matter. When I say Xbox Live you realize that I am talking about the online services attached to Xbox. When I say Dynamics Live you realize that I am talking about the online version of Dynamics. When I say Windows Live something, you realize that I am talking about the online services that extend Windows. But when you hear Live Connect, what do you understand? Is it part of Windows Live, Xbox Live, Office Live or Dynamics Live?

    It also matters as it shows consistency and tidiness in branding as well as a level of professionalism reflected in the attention to detail.

  61. Find on Page <-- WP-Mango says:

    In mango they removed Find on Page from IE… please cast your vote so they bring it back: windowsphone.uservoice.com/…/2110469-bring-back-find-on-page-to-the-browser

  62. Travis Brown says:

    I think that the skydrive is the most usetfull element on windows 8 development preview I can't wait when they get done with it I cant run it on my computer because the size on the computer is to big and I need to make it smaller and I cant do that it hard to read and they only work if there is like a 1024*768 something like that

  63. @ClaudioJr, @AndrewDover will your needs be addressed by us publishing a code sample in C++ as we've done for JavaScript and C# at code.msdn.microsoft.com/…/search or is the desire for a specific SDK for C++ development?

  64. Bobby Fleigh says:

    I wish SkyDrive had a for-fee option to have files larger than 50MB.  It's useless to me without the ability to store larger files.  Please support BITS too, for slower-but-reliable transfers.

  65. tpm says:

    Waiting for STORE……………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….???????????????????????????????????????????

  66. Jonas says:

    Hello!

    The Developer Preview is very good!

    BUT I think its better to split up Metro UI from the normal Desktop mode. The Metro UI is only for Tablets.

    When you think on Tablets: The Metro UI is very touch friendly, but sometimes you have to go back to Desktop Mode and then you have problems on touch.

    Its better when Metro is a own system (Only for tablets).

  67. GregH says:

    The power of both is what makes Windows 8 a killer platform, we just need to get the balance a little more elegant, personally  I would like to take my light and powerful tablet and plug into a dual screen setup with mouse and keyboard on the fly and start working in desktop, woo woo!!!

  68. AndrewDover says:

    >>> @AndrewDover will your needs be addressed by us publishing a code sample in C++ as we've done for JavaScript and C# at code.msdn.microsoft.com/…/search or is the desire for a specific SDK for C++ development?

    @dare,

    First, publish a native C++ code sample for using SkyDrive.

    The best implementation would only use Windows Runtime APIs. If that is not possible, WinHTTP might be used.  But .net managed code should not be in that sample.

    The whole point of the Windows runtime is to avoid .NET or native C++ specific SDKs to solve the same problem.  Hopefully, the SkyDrive team took the architecture of WIndows Runtime into account when preparing for Windows 8.

    If they did, then the C++ sample should be simple enough to implement and understand.

  69. AndrewDover says:

    >>> @AndrewDover will your needs be addressed by us publishing a code sample in C++ as we've done for JavaScript and C# at code.msdn.microsoft.com/…/search or is the desire for a specific SDK for C++ development?

    @dare,

    First, publish a native C++ code sample for using SkyDrive.

    The best implementation would only use Windows Runtime APIs. If that is not possible, WinHTTP might be used.  But .net managed code should not be in that sample.

    The whole point of the Windows runtime is to avoid .NET or native C++ specific SDKs to solve the same problem.  Hopefully, the SkyDrive team took the architecture of WIndows Runtime into account when preparing for Windows 8.

    If they did, then the C++ sample should be simple enough to implement and understand.

  70. It's funny how you all care to post here if none of our opinions are going to be taken in account whatsoever. They are already set in stone with everything regarded Windows 8. This is just a PUBLICITY blog. Period. So us, the "Microsoft lovers" (or so they think so) can spread the word out. Don't waste your time, people.

  71. GregH says:

    @mad_win_7_user – it’s a bit negative – if the teams read this blog then they may feel inspired by constructive criticism to re-focus or challenge some of the existing principles, we are still a year away from a launch probably and I would like to think that they have a lot of development ahead to make this the best product possible. I think this simply means to provide a place for transparent knowledge transfer about the opportunity for developers to build on new technologies; I would like to think that they are already talking about some of what has been discussed on the blog.

  72. Lena says:

    @Funny, we cannot even delete, copy or move the file from the root folder of the SkyDrive via web-interface!! In other words, we can copy from one folder to another but can't copy from root to any folder or vice versa! What's the risk there? Thanks more pathetic than funnier…

  73. Hassan Salem says:

    It is really a very good and practical idea fro file saving and sharing but a question rising up in my mind which is that what microsoft will gain from providing huge no. of hard drives and servers for people to save ther files?? what is the benfit for microsoft from that or against that ??

  74. Lena says:

    ^^ Correction: **That's** more pathetic than funnier…

    blame my iPad2..

  75. LenaFan says:

    @Lena: That's the way to go, Lena, Apple iPad 2 or later.

    Drop all the rest. You don't need Windows 8, iPad 2 is better.

     Apple forever 

  76. @GregH, how much do you wanna bet? I could bet my house they won't deliver a version "desktop only" of Windows 8, nor a less Metro oriented one — as this is one of the most requested things here and on the forum. I'd bet everything I have they won't.

  77. Joe Dietz says:

    Cloud storage is great, but it is missing a few somethings that traditional storage have had for awhile that are fairly important to users, namely layered extensibility.

    Extensibility allows for 3rd party security products to be implemented that are not a tangled mess of hacks, this is good for both users and Microsoft.  Formal structured extensibility would allow user-controlled encryption for instance, or various forms of security and data loss products.

    Don't think for the moment that the lack of a structured extension mechanism will stop these products from being developed and deployed, especially in bring-your-own-pc type home/office usage scenarios, it just means they will not be robust and will erode the value of the platform.

  78. Stan says:

    ************************************************************************************************

    I know this has nothing to do with SkyDrive, but here's a great suggestion for Windows 8:

    Let developers register file extensions to be used by their application when registering them for the Windows Store, so when you open an unknown file type, Windows can suggest programs that can open it from the Store.

    ************************************************************************************************

  79. Tux says:

    Finally something to compete with Ubuntu One

  80. Topher Brink says:

    Can't we *please* drop this "Cloud" buzzword nonsense? It's the internet. No more, no less.

  81. Vicki Milton [MSFT] says:

    @Techknackblogs As a global product, Windows must be able to address offline only as well as frequent loss of connectivity.  To address this, we've designed it so you can always access your PC with your LiveID (your user account) regardless of your connectivity state.  

    Vicki Milton

    Senior Product Planner, Windows Security and identity

  82. A concerned user says:

    "a single cloud for everyone, where a person’s important files are centrally available, instantly accessible, and ready to share.'

    1) US Homeland Security will access this anytime they want without the owner of the file knowing it happened – see  P.A.T.R.I.O.T. Act

    2) Non-U.S. users will have their data/files on U.S. controlled servers – see 1) above.

    3) I may not want some files instantly available on some devices, so if it is automated, and I have 1Tb of photos on a desktop and access this with a netbook, will I be using airtime – that I have to pay for – just to synchronize the list of files for want of access to one file?

    4) Did you really think this through?

  83. Carol Chisholm says:

    Completely useless for those of us who have made the fatal mistake of linking Zune, Xbox or other IDs to a LiveID while living on one country, then moved somewhere else only to find we can't use out new credit cards with our old IDs, because the countries don't match. We can't recover old purchases or apps and we can't buy anything new! Wake Up microsoft, and sort out the LiveID – ZuneID – XboxID for the global world!

  84. Suresh says:

    It worked fine for me. I was selected "Remember my credentials"  while my first log in. So every time it is taking the same live Id. How to get the Sign in box again?? i deleted cookies etc. but still it was taking my username and password automatically.

    How to get my sign in box again???please help.

  85. Érico Porto says:

    @Mike Torres : about the latency problem on accessing a drive, you could recursive fill some sort of file in computer so it can know in advance what are the files names, types with some advance – like in a single file, that is downloaded and can be accessed at the same time, like ubuntu tail -f. Anyway, accessing like a letter from the windows explorer is something that would be great, and you guys should really look into it.

  86. Érico Porto says:

    And please, no sincronization in any kind, it's the thing that sucks the most from all the Apple products, and I don't want to have all my Microsoft stuff trashed the same way. Keep things easy and simple!

  87. ddbug says:

    By not supporting Live Sync in WinXP, MS loses competition to Dropbox and all the rest. Not a smart move. Like lots of others, I stay with XP and won't get Win7. Will wait for Win8.