• 第二十五章 与WinRT组件互操作


    目录:

    CLR投射与WinRT组件类型系统规则

    框架投射

    用C#定义WinRT组件

    Windows 运行时:组件的目的是公开操作系统最擅长的事情,就是对硬件和跨应用程序的功能进行抽象。所以大多数WinRT组件都只是公开了功能,比如存储,联网,图形,媒体,安全性,线程处理等。WinRT组件内部作为“组件对象模型”组件来实现。WinRT组件使用由ECMA协会标准化的.NET元数据格式(ECMA-335)来描述其API。

    元数据比类库更优表现力。CLR一开始就通过运行时可调用包装器COM包装器实现了与COM组件的互操作。

    CLR投射:CLR投射由CLR隐式执行,通常和元数据的重新解释有关。

    Framework投射:Framework投射由你的代码显示执行,这是通过FCL新引入的API来执行。

    CLR投射与WinRT组件类型系统规则

    CLR看到一个WinRT类型时,通常允许通过CLR的一般化COM互操作技术来使用该类型。但有时CLR会隐藏WinRT类型(将其动态设为私有)。然后,CLR通过一个不同的类型来公开该类型。在内部,CLR会查找特定的类型(通过元数据),然后将这些类型映射成FCL的类型。

    框架投射

     异步编程,WinRT流和.NET Framework流之间的互操作以及需要在CLR和WinRT API之间传输数据块的时候需要使用框架投射。

    2.1 从.NET代码中调用异步WinRT API 

    2.2 WinRT流和.NET流之间的互操作

    2.3 在CLR和WinRT之间传送数据块

    用C#定义WinRT组件

    每天学习一丢丢
  • 相关阅读:
    用laravel MaatwebsiteExcel 设置格式和导出
    PHP实现微信开放平台扫码登录源码(微信第三方登陆)
    oss存储前端直传向后台请求临时授权(下)
    小记
    String是个啥?
    ZAB协议
    基于Zookeeper实现客户端动态监听服务器上下线
    反射反射,程序员的快乐
    MapReduce工作流程及Shuffle原理概述
    自定义InputFormat
  • 原文地址:https://www.cnblogs.com/terry-1/p/10508452.html
Copyright © 2020-2023  润新知