我很高兴看到.NET Core 3.1和Visual Studio 2019 add support for managed C++/CLI projects的最新预览,因为这样的项目是在.NET Framework上保留特定项目的唯一想法。
因此,我安装了Visual Studio Preview 16.4.0 Preview 4,以及“对v142的C ++ / CLI支持...”选项,并且按预期的方式,我看到了新的C ++ CLR模板并具有.NET Core 3.1 Preview 2已安装
我使用“ CLR类库(.NET Core)”模板创建了一个新项目,将文件复制到一个旧的托管C ++ / CLI项目中,进行了一些调整,并构建了程序集-太好了!
但是,当我尝试在.NET Core 3.1中使用该程序集时,却收到此致命异常:
Unhandled exception. System.BadImageFormatException: Could not load file or assembly 'MyAssembly,Version=2019.0.1.0,Culture=neutral,PublicKeyToken=null'. An attempt was made to load a program with an incorrect format.
File name: 'MyAssembly,PublicKeyToken=null'
at TestApp.Program.Main(String[] args)
这两个托管程序集和测试应用程序目标都是X64。有任何想法可能是什么问题吗?