Ошибка сборки: COMReference .NET CORE 3.0: AxImp не найден

Я пытаюсь скомпилировать приложение .NET CORE 3.0, имеющее ссылку на COM. К сожалению, при попытке создать приложение, имеющее ссылку, я получаю сообщение об ошибке сборки:

1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\Microsoft.Common.CurrentVersion.targets(2726,5): 
error MSB3091: 
Task failed because "AxImp.exe" was not found, or the correct Microsoft Windows SDK is not installed. 
The task is looking for "AxImp.exe" in the "bin" subdirectory beneath the location specified in the 
InstallationFolder value of the registry key HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\NETFXSDK\4.7.2\WinSDK-NetFx40Tools-x86. 

You may be able to solve the problem by doing one of the following:  
1) Install the Microsoft Windows SDK.  
2) Install Visual Studio 2010.  
3) Manually set the above registry key to the correct location.  
4) Pass the correct location into the "ToolPath" parameter of the task.

vs ide

Я понимаю, что, вероятно, что-то не так с установкой или конфигурацией (?), Но не могу понять, что именно. У меня установлена ​​Visual Studio 2019 (последняя на момент написания - 16.3.9). Приложение настроено на целевой .NET CORE 3.0, который должен поддерживать элемент <ComReference ...>.

Как создать приложение, имеющее COM REFERENCE с .NET CORE 3.0, с помощью Visual Studio 2019? Я строю из VS2019 IDE. Насколько я понимаю, он даже не должен искать "AxImp", он, вероятно, должен искать "TlbImp". Кроме того, почему он ищет Visual Studio 2010 ?? Установлен Windows SDK. Нужна ли какая-то конкретная версия? Который из?

Я попытался удалить, а затем снова добавить ссылку, используя ссылки на проекты, ничего не изменилось. Я что-то упускаю?


person Nikolay    schedule 19.11.2019    source источник
comment
@HansPassant Похоже, проблема с версией. Он начал работать после того, как я установил .NET SDK 4.7.2 (не работал с SDK 4.8 по умолчанию) Может быть, версия где-то жестко запрограммирована?   -  person Nikolay    schedule 21.11.2019
comment
Это правдоподобно, ведь на момент первой поставки VS2019 SDK 4.8 еще не был готов, поэтому почти у всех установлен SDK 4.7.2. То, что они затем забыли обновить msbuild, было случайностью, ожидающей своего часа.   -  person Hans Passant    schedule 21.11.2019


Ответы (1)


После установки .NET SDK 4.7.2 проблема исчезла. Раньше у меня была версия 4.8 (по умолчанию установлена ​​с VS 2019)

person Nikolay    schedule 21.11.2019