- 🔴 20:34 Повітряна тривога в Харків.обл.
- #1
COM-Объекты
Вопрос скорее по реализации интерфейса IUnknown. Используется плюсовый ком интерфейс в .нэт приложении. ком вида
в проект .нэт добавляю длл через референс, студия сама создает интеропы итд.
абстрактный код для нэт
Все работает, объект создается и выполняет свое предназначение.
Вопрос в следующем:
Так до конца и не понял, нужно ли мне явно реализовывать метод Release() для ISomeClass, чтобы уменьшать кол-во объектов и освобождать память или же освобождение происходит и так? И высвободится ли ком, когда "cl" уничтожится мусорщиком?
Вопрос скорее по реализации интерфейса IUnknown. Используется плюсовый ком интерфейс в .нэт приложении. ком вида
Код:
ISomeClass : IUnknown
{
HRESULT SomeMethod( in la, out la, out retval la);
}
в проект .нэт добавляю длл через референс, студия сама создает интеропы итд.
абстрактный код для нэт
Код:
ComClassesLib.SomeClass cl = new ComClassesLib.SomeClass();
string str = cl.SomeMethod();
Все работает, объект создается и выполняет свое предназначение.
Вопрос в следующем:
Так до конца и не понял, нужно ли мне явно реализовывать метод Release() для ISomeClass, чтобы уменьшать кол-во объектов и освобождать память или же освобождение происходит и так? И высвободится ли ком, когда "cl" уничтожится мусорщиком?