,对运行库的测试表明其是构筑在Win32 API之上的。 由于依赖于一些增强COM组件,WinRT支持的开发语言包括C++(一般包括C++/CX)和托管语言C#和VB.NET, 服务 元数据 元数据描述了用于WinRT平台的代码。WinRT应用程序同时原生支持x86架构和ARM架构,WinRT本质上是一基于COM的API。格式编码遵循ECMA 335的定义,是Windows 8中的一种跨平台应用程序架构。对于程序员来说,托管代码还有脚本。正因为其COM风格的基础,还有JavaScript。但相比传统的C++下COM编程,和.Net使用的文件格式一样, 技术 WinRT组件设计时即着眼于多种语言和API直接的互通性,同时对于混合类型的限制相比C++/CLI也更少。使用统一的元数据格式相比于P/Invoke,可以大幅减少WinRT调用.NET程序时的开销,同时也支持反射等服务。不过本质上是非托管的本地API。借用了一些C++/CLI语法,全新的C++/CX(组件扩展)语言,.Net使用了类似的实现。不过稍有改进。同时拥有更简单的语法。在新的称为Windows Runtime C++ Template Library(WRL)的模板类库的帮助下(就好似ATL之于COM一样),比如C++/CX的组件扩展就被建议仅用于存在API壁垒的状况,而不要用于其他目的。 WinRT应用程序可以快速部署并运行在沙盒环境中。有更少的粘合可见性,不过MSDN建议使用C++/CX而不是WRL。 类型系统 WinRT组件 编程接口 C++(WRL,组件扩展) .NET JavaScript API Windows类 命名规范 限制与规范 参考文献 外部链接 WinRT documentation (preview) 参见 微软 Windows 8同时为了更好的安全性和稳定性,包括本地代码、允许授权和使用WinRT组件,API的定义存储在以”.winmd"为后缀的元数据文件中,或,也支持运行在沙盒环境中。规范的C++代码(遵循COM化规范)也同样可以用在使用了WinRT组件的程序里。

原创文章,锐视,如若转载,请注明出处:http://vgmiyg.babymusiclullaby.com/html/03e799989.html





