Is MSXML6 available for Windows store apps?

Category: windows metro apps native


Modi Deepak on Fri, 16 Aug 2013 04:56:34

We have code that uses MSXML6 but the CoCreateInstanceFromApp fails to locate the DOM classID which indicates that this is not in the list of allowed CLSID. I wanted to know if MSXML6.0 available for Windows store app, i.e. if I can include the msxml6 dll as side by side assembly and get it working for Windows store app or I will have to change the code to use Windows.Data.Xml.Dom?



Rob Caplan [MSFT] on Fri, 16 Aug 2013 05:09:18

You will need to use Windows.Data.Xml.Dom


Modi Deepak on Fri, 16 Aug 2013 05:15:45

Thanks Rob. Just out of curiosity, Windows.Data.Xml.Dom provides most of the APIs that MSXML dom provides then why not provide msxml for Immersive apps? There are some differences like async load as compared to sync load of XML in Immersive, however why not wrap it in msxml itself which would make the life of developers easy, specially for apps with huge code base which are being ported.

Chuck Walbourn - MSFT on Mon, 19 Aug 2013 19:05:25

The general philosophy with WinRT APIs is (a) there should be only one API to accomplish a task rather than the dozens we accumulated over the years in Win32, and (b) APIs should use async models for power and thread efficiency. WinRT APIs also need to work within the confines of the AppContainer security context, respect security and privacy behavior, etc. There's an additional preference to make sure WinRT APIs are functionally usable by C++, JavaScript/HTML5, and C#. They also need to work on x86, x64, and ARM.

Most Win32 APIs do not meet these requirements 'as is'.

In some areas, there are Win32 APIs still in place and of course much of the C++ Standard Library works fine as well. XML parsing is not one of these.

You may want to review the Dual-use Coding Techniques for Games article for some discussion of the overlap between WinRT and WIn32.

Modi Deepak on Tue, 20 Aug 2013 04:21:19