Пишу простой COM-сервер на C#. В 1С COM-объект создается без проблем, обычные методы вызываются.
Но мне нужно сделать событие, которое я смогу подключить через Добавитьобработчик в 1С и 1С бы реагировало на него.
Для этого сначала делаю простой пример, чтобы понять как все это работает.
Добавил вот такой интерфейс:
[Guid("7E290D1A-DE2A-4D73-9B87-9F24E72B2AB9"), InterfaceType(ComInterfaceType.InterfaceIsIDispatch)]
public interface IMyEvents
{
[DispId(1)]
void Sob();
}
У класса добавил делегат и событие:
public delegate void Sob_Delegate();
public event Sob_Delegate Sob;
добавил метод для делегата:
public void Test()
{
}
Создаю делегат и вызываю его:
Sob_Delegate Sob = Test;
Sob();
Когда в 1С вызываю Добавитьобработчик МойОбъект.Sob, ОбработчикСобытия;
То выходит ошибка "Событие объекта не обнаружено (Sob)".
Как это правильно делается? Может где-то есть пример?
(3) Это же немного не то. Это внешняя компонента 1С по технологии COM. А у меня обычный COM-компонент.
Просто мне кажется, что добавить событие это как-то очень просто. Чем переопределять все эти методы из API 1с
(4) >добавить событие это как-то очень просто. Чем переопределять все эти методы из API 1с
обертка/шаблон один раз пишется а затем хоть задобавляйся
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой