none
不知VS2010版把Windows的API是否全部包装到.NET类库了?我是不是还是要继续了解C++而去学习互操作呀?因为有些Winform功能需要C++的API RRS feed

  • 问题

  • 不知VS2010版把Windows的API是否全部包装到.NET类库了?(微软有这个计划吗/)我是不是还是要继续了解C++而去学习互操作呀?因为有些Winform功能需要C++的API
    2009年10月6日 12:49

答案

  • 应该不会,不是很现实,常用的用,不常用的就DllImport呗。

    另外,用第三方DLL也需要DllImport,封装全部Win32API不能达到不使用P/Invoke的目的。在interop时留心点也不会出现什么大问题。比如memory leak
    Cheers, Cedric
    2009年10月6日 14:14
  • 微软的.Net类库永远不会包含封装所有的Windows API。
    微软不是福利机构,要有足够用户需求才会投入资金开发产品。DirectDraw这样的过时API是不会有新的投入的。另外,一些每个操作系统都不同的API,比如Windows无线API,也不会有太多的用户需求。
    另外,.Net下载大小也是一个因素……虽然现在宽带都普及了,但是每个支持的操作系统的API都封装一遍的话,一个比操作系统还大几倍,而且很多功能当前操作系统都不支持的软件包会有多少人去下载?




    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful.
    Visual C++ MVP
    2009年10月6日 16:32
    版主
  • 你好!
         .NET Framework4.0应该也不会封装所有的API,很多因素决定了不可能封装所有的API(开发成本,.NET Framework的体积和使用复杂度等),如果需要使用API,可以直接在C#中声明,然后调用API就可以了!
    周雪峰
    2009年10月7日 5:29
    版主

全部回复

  • 应该不会,不是很现实,常用的用,不常用的就DllImport呗。

    另外,用第三方DLL也需要DllImport,封装全部Win32API不能达到不使用P/Invoke的目的。在interop时留心点也不会出现什么大问题。比如memory leak
    Cheers, Cedric
    2009年10月6日 14:14
  • 微软的.Net类库永远不会包含封装所有的Windows API。
    微软不是福利机构,要有足够用户需求才会投入资金开发产品。DirectDraw这样的过时API是不会有新的投入的。另外,一些每个操作系统都不同的API,比如Windows无线API,也不会有太多的用户需求。
    另外,.Net下载大小也是一个因素……虽然现在宽带都普及了,但是每个支持的操作系统的API都封装一遍的话,一个比操作系统还大几倍,而且很多功能当前操作系统都不支持的软件包会有多少人去下载?




    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful.
    Visual C++ MVP
    2009年10月6日 16:32
    版主
  • 你好!
         .NET Framework4.0应该也不会封装所有的API,很多因素决定了不可能封装所有的API(开发成本,.NET Framework的体积和使用复杂度等),如果需要使用API,可以直接在C#中声明,然后调用API就可以了!
    周雪峰
    2009年10月7日 5:29
    版主
  • 请看下这个code Pack:
    http://code.msdn.microsoft.com/WindowsAPICodePack
    Best regards,
    Riquel
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.
    Welcome to the All-In-One Code Framework! If you have any feedback, please tell us.
    2009年10月8日 9:12
    版主