平台调用服务

时间:2020-07-30 21:51:04

平台调用服务英语:Platform Invocation Services),或称P/Invoke,通常指微软的公共语言运行时提供的跨平台调用方式。

平台调用服务是公共语言基础设施相关实现的一个特性。这一特性与微软的公共语言运行时提供的较为类似,因此一般提到P/Invoke多数指微软的.NET实现方案。这一方案能够实现通过托管代码访问原生代码。使用P/Invoke可以通过CLR来控制DLL的加载,以及将非托管代码的数据类型转换为托管数据类型。

Windows

在Microsoft Windows操作系统中,Native API有时也是以COM接口方式来推出,像是ADSI,FSRM(File Server Resource Manager)等,通常是新的服务或是接口才会广泛使用COM原生接口方式。因为.NET Framework的推行,Windows的应用程序接口被分为两种,一种是遵循原本Windows API方式的,称为Native API,另一种则是以.NET Framework为基础开发的,称为Managed API,例如Managed DirectX或是IIS Admin APIs等。

在Microsoft Windows操作系统中,若是透过VB或是.NET Framework访问直接开放C函数的Native API时,则必须要利用平台调用服务方式访问;若是访问以COM方式开放的Native API时,若该API支持COM Automation规格时,即可利用COM Interop Services来访问。

与本文近似的文章: