Я пытаюсь оценить программный SDK для отображения файлов PDF. Он поставляется с несколькими примерами проектов, но у меня возникают проблемы при создании проектов C ++. Я почти уверен, что это проблема моей локальной среды, но я не знаю, как ее исправить:
Проекты представляют собой решение Visual Studio, которое будет использоваться в Visual Studio 2017. После первого открытия мне сказали установить недостающие функции (VS17 была простой установкой без каких-либо рабочих нагрузок ранее):
После установки этого, а также работы с набором инструментов платформы и общими целевыми настройками платформы я наконец смог создать библиотечную часть C ++, которая создает файл .dll
, который будет использоваться другими 2 проектами C ++. (Я также могу подтвердить, что это работает нормально, так как включенный проект C # прекрасно использовал библиотеку.)
Но для 2 оставшихся проектов C ++ я получаю эту ошибку при сборке:
The package System.Net.Http with version 4.1.1 could not be found in C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\. Run a NuGet package restore to download the package.
FunctionDemo
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\Microsoft\NuGet\15.0\Microsoft.NuGet.targets
377
К сожалению, я понятия не имею, что значит «Используйте NuGet Package Restore для их загрузки». означает в этом контексте - и в решении, и во всех проектах ничего не указано при использовании Manage NuGet Packages...
в Visual Studio. Так что я даже не знаю, откуда взялась эта зависимость. (Возможно, это часть общих SDK, которые я установил?)
При двойном щелчке появляется сообщение об ошибке C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\Microsoft\NuGet\15.0\Microsoft.NuGet.targets
с этим:
<ResolveNuGetPackageAssets Condition="Exists('$(FrameworkInjectionLockFile)')"
NuGetPackagesDirectory="$(FrameworkInjectionPackagesDirectory)"
RuntimeIdentifier="$(NuGetRuntimeIdentifier)"
TargetMonikers="$(NuGetTargetMonikerToInject)"
ProjectLockFile="$(FrameworkInjectionLockFile)">
Но я думаю, это довольно стандартно. Это говорит мне что-то, откуда появляется ошибка?
В файловой системе C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\System.Net.Http\4.1.1
действительно не существует. Любая попытка заполнить его вручную (загрузить пакет nuget вручную в проект и скопировать результаты здесь, используя любые решения или команды, которые я могу найти в Интернете), не удалась.
Если выяснилось, что C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\
является источником пакета Microsoft Visual Studio Offline Packages
, который я могу просмотреть через Параметры -> Диспетчер пакетов NuGet -> Источники пакетов в Visual Studio 2017, но отключение его там ничего не изменило в сообщении об ошибке. .
Я смотрю не в том месте?
Это действительно моя локальная проблема или проблема проекта?
Как я могу решить эту проблему?