C++ CLR NuGet Package Error: Installation Failed

C++ CLR NuGet Package Error: Installation Failed

所以我正在使用 C++ 来处理一个项目,并且我已经创建了一个 GUI。我尝试使用 NuGet 来代替包但是,它不断出现此错误:

Could not install package 'MetroModernUI 1.4.0'. You are trying to install this package into a project that targets 'native,Version=v0.0', but the package does not contain any assembly references or content files that are compatible with that framework. For more information, contact the package author.

我在这里找到了 link 来帮助我解决这个问题。然而,第 2 步出现了另一个问题。这是 link 和错误:

How can I make my managed NuGet package support C++/CLI projects?

Install failed. Rolling back...
Package 'NuGet.CommandLine.5.8.1' does not exist in project 'Project Name'
Package 'NuGet.CommandLine.5.8.1' does not exist in folder '<path>\packages'

该目录中甚至不存在包文件夹。请有人帮助我,因为在尝试使用 NuGet 代替包时,该错误也出现在上一个错误中,这里是:

Install failed. Rolling back...
Package 'MetroModernUI.1.4.0' does not exist in project 'Project Name'
Package 'MetroModernUI.1.4.0' does not exist in folder '<path>\packages'

步骤

1首先,通过 Nuget 包管理器 UI[= 将 NuGet.CommandLine 版本 4.7.3 安装到你的 clr 项目中46=].

2)之后,在新创建的packages.config文件下手动添加这个

<package id="MetroModernUI" version="1.4.0"/>

然后,重建您的项目以恢复 nuget 包 MetroModernUI

你可以在<Solution_Folder>\packages\MetroModernUI.1.4.0.0

下找到nuget包安装到你的项目中

3) 然后右击 References-->Add Reference-- >浏览然后添加

<Solution_Folder>\packages\MetroModernUI.1.4.0.0\lib\net\MetroFramework.dll 或该文件夹中的任何其他人。

您应该注意,clr 项目不能由 nuget 自动引用网络程序集 dll。您应该手动添加它们。

所有这些步骤将帮助您得到您想要的。