Как правильно создавать COM-классы с помощью .NET8?C#

Место общения программистов C#
Anonymous
Как правильно создавать COM-классы с помощью .NET8?

Сообщение Anonymous »

Мне нужно создать COM-класс в .NET8, который должен быть доступен для Excel.
После просмотра этого видео я реализовал следующий класс тестового стенда:
namespace COMTestBedCS
{
[Guid("26a0aa6d-5aba-458f-92b4-b9a30ae0c65c")]
[GeneratedComInterface]
public partial interface ITestBed
{
int GetXPTO();
void SetXPTO(int value);
}

[Guid("3e178f98-522e-4e95-8a9c-6d80dc48b7d5")]
[GeneratedComClass]
public partial class TestBed : ITestBed
{
private int _XPTO = 1024;

public int GetXPTO() => _XPTO;
public void SetXPTO(int value)=>_XPTO = value;
}
}

Проект компилируется корректно, без ошибок. Однако когда я пытаюсь сослаться на этот тестовый стенд в Excel, я получаю следующую ошибку: Невозможно добавить ссылку на указанный файл.
Если я попытаюсь использовать regsvr32, я получаю следующую ошибку:
Изображение

Что я делаю не так?

Для завершения вот файл проекта:



net8.0
enable
enable
true





Подробнее здесь: https://stackoverflow.com/questions/783 ... -with-net8

Вернуться в «C#»