【问题标题】:Relationship between MSVC and .NET framework versionsMSVC 和 .NET 框架版本之间的关系
【发布时间】:2013-05-13 20:47:20
【问题描述】:

这是一个相当普遍的问题,因为我对如何使用不同版本的 Microsoft Visual C++ (MSVC) 及其 C# 绑定来编译 GDAL 感到困惑。我了解 MSVC 是一个编译器,并且有不同的版本(MSVC 2003、2005、2008、2010、2012)。我也知道 C# 与 .NET 框架相关联,该框架是一个软件开发框架,也有不同的版本(.NET 1.0 到 5.0)。

我想使用 VS 2012 编译 GDAL(因为我想使用未包含在可用的 SDK 构建中的扩展 here)以供 C#(通过其 C# 绑定)使用,我将拥有哪个版本的 MSVC使用?我猜答案是 MSVC 2012(相同的 .NET 框架版本),但实际上为什么呢? GDAL 构建将创建 DLL。 .NET 框架是否不向后兼容,因为我可以在使用 VS 2012 的 C# 项目中使用用旧版 MSVC 编译的 DLL?

感谢任何启发。

【问题讨论】:

    标签: c# .net visual-c++ gdal


    【解决方案1】:

    这种关系在很大程度上是无关紧要的,除非你在玩弄 C++/CLI(它看起来不像你)。

    C# 通过使用 P/Invoke(又名DllImport)或通过 COM 使用本机 DLL,只要导出格式正确(并且它们在.NET 平台的正确 ISA)。

    使用与 VS 相同的 C++ 编译器,您可以省去寻找替代工具的麻烦,并简化您的构建过程。

    【讨论】:

      猜你喜欢
      • 2022-01-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-03
      相关资源
      最近更新 更多