2.1 Interop
(1)interop123网站
l URL
http://www.interop123.com
http://www.interop123.net
http://www.interop123.cn
l 描述
本书的技术支持网站,也提供了一个互操作最佳实践的交流平台。
(2)dotnetinterop网站
l URL
http://www.dotnetinterop.com/
l 描述
一个列出了不少有关互操作技术资源的网站
(3)An Overview of Managed/Unmanaged Code Interoperability
l URL
http://msdn.microsoft.com/en-us/library/ms973872.aspx
l 描述
该文章介绍了托管代码和非托管代码之间交互操作的一些基础知识。
(4)Interoperating with Unmanaged Code
l URL
http://msdn.microsoft.com/en-us/library/sd10k43k.aspx
l 描述
包括了一系列主题文章,介绍了一些在托管代码和非托管代码之间进行互操作的知识。
2.2 P/Invoke
(1)pinvoke.net网站
l URL
http://www.pinvoke.net/
l 描述
此网站上有大量丰富的对Win32 API进行P/Invoke时所需进行的托管声明,使开发人员可以学习或快速查找某些Win32函数的对应.NET声明。
(2)Platform Invoke Tutorial
l URL
http://msdn.microsoft.com/en-us/library/aa288468.aspx
l 描述
本文介绍了如何借助于P/Invoke技术在C#中调用非托管DLL中的函数及如何封送一些常用数据类型。
(3)Microsoft Win32 to Microsoft .NET Framework API Map
l URL
http://msdn2.microsoft.com/en-us/library/aa302340.aspx
l 描述
该文档列出了在.NET Framework中已经实现了的、与Win32 API函数具有相同功能的方法。在避免不必要的、对某些Win32函数的进行P/Invoke的同时,也能使用.NET提供的对应托管实现编写更安全、更高效的代码。
(4)Windows API Reference
l URL
http://msdn2.microsoft.com/en-us/library/aa383749(VS.85).aspx
l 描述
有关Windows API的最权威指南。
(5)CLR Inside Out: Marshaling between Managed and Unmanaged Code
l URL
http://msdn2.microsoft.com/en-us/magazine/cc164193.aspx
l 描述
解释了P/Invoke中容易混淆的某些基本概念,以及能够简化在托管和非托管代码间封送数据的方法和技巧。也包含了一个能够为Win32函数自动生成对应托管声明等功能的小工具。
(6)Calling Win32 DLLs in C# with P/Invoke
l URL
http://msdn.microsoft.com/zh-cn/magazine/cc164123(en-us).aspx
l 描述
介绍了如何使用P/Invoke技术调用Win32 API函数。
(7).NET Interoperability: .NET ? Win32
l URL
http://www.blong.com/Conferences/BorConUK2002/Interop1/Win32AndDotNetInterop.htm
l 描述
本文重点介绍了如何在托管代码中调用非托管DLL导出的函数。
(8)从托管代码调用本机函数
l URL
http://msdn.microsoft.com/zh-cn/library/ms235282.aspx
l 描述
介绍了如何在C++中使用显式P/Invoke(DllImport属性)及使用C++ Interop(隐式PInvoke)从托管代码调用本机函数。
2.3 C++ Interop
(1)使用 C++ Interop
l URL
http://msdn.microsoft.com/zh-cn/library/2x8kf7zx(VS.80).aspx
l 描述
该主题介绍了如何使用C++ Interop技术实现托管代码和非托管代码的交互操作。
(2)Interop 的性能注意事项 (C++)
l URL
http://msdn.microsoft.com/zh-cn/library/ky8kkddw.aspx
l 描述
该主题介绍了使用C++ Interop技术在托管代码与非托管代码之间进行互操作时有关性能的若干准则和建议。
2.4 COM Interop
(1)CLR 完全介绍: COM Interop 简介
l URL
http://msdn.microsoft.com/zh-cn/magazine/cc163494.aspx
l 描述
该主题介绍了COM Interop有关的基本概念,并提供了示例,适合对COM Interop技术进行快速入门。
(2)Understanding Classic COM Interoperability With .NET Applications
l URL
http://www.codeproject.com/KB/COM/cominterop.aspx
l 描述
该主题详细介绍了如何借助于COM Interop技术在托管代码中使用COM组件以及如何在COM客户端中使用.NET程序集。
(3)COM Interop Tutorials
l URL
http://msdn.microsoft.com/en-us/library/aa645712(VS.71).aspx
l 描述
该主题包含了两篇在托管代码和COM组件之间进行交互的简要指南。
(4) .NET Interoperability: COM Interop
l URL
http://www.blong.com/Conferences/BorConUK2002/Interop2/COMNetInterop.htm
l 描述
该文章介绍了如何在托管代码中使用非托管COM对象,以及如何在COM客户端中使用托管.NET对象
(5)Improving Interop Performance
l URL
http://msdn.microsoft.com/en-us/library/ms998551.aspx
l 描述
该文章介绍了设计和创建用于同COM组件进行互操作的.NET组件时,有关提升性能的若干建议。
2.5 封送处理
(1)Interop Marshaling
l URL
http://msdn.microsoft.com/en-us/library/04fy9ya1.aspx
l 描述
该主题介绍了使用P/Invoke和COM Interop时,如何对数据进行封送处理。
(2)Default Marshaling Behavior
l URL
http://msdn.microsoft.com/en-us/library/zah6xy75.aspx
l 描述
该主题介绍了如何识别互操作封送处理服务的默认封送处理行为。并对数组、布尔、字符、字符串、类、结构体、对象及委托的封送处理行为进行了详细的介绍。
(3)Copying and Pinning
l URL
http://msdn.microsoft.com/en-us/library/23acw07k(VS.71).aspx
l 描述
该主题介绍了在封送数据时,封送拆收器如何拷贝和锁定数据。
(4)Overview of Marshaling in C++
l URL
http://msdn.microsoft.com/zh-cn/library/bb384865.aspx
l 描述
该主题介绍了在混合模式下,如何在本机类型和托管类型之间封送数据。
(5)Blittable and Non-Blittable Types
l URL
http://msdn.microsoft.com/zh-cn/library/aa719638(en-us).aspx
l 描述
该主题介绍了可直接复制到本机结构中的类型及非直接复制到本机结构中的类型。
(6)Windows Data Types
l URL
http://msdn.microsoft.com/en-us/library/aa383751(VS.85).aspx
l 描述
该主题介绍了Windows编程中的常用数据类型。