C# COM & Delphi 6
От: dragon23 Россия none
Дата: 11.07.02 14:33
Оценка:
Есть COM вида:

namespace FormulaServer
{
    public delegate void handlerEventaccessAccept();

    [ComSourceInterfaces("FormulaServer.serverFormulaEvents")]
    [ClassInterface(ClassInterfaceType.AutoDual)]
    public class serverFormula
    {
        public event handlerEventaccessAccept accessAcceptCB;
        protected virtual void _OnaccessAccept()
        {
            if (null != accessAcceptCB)
            {
                accessAcceptCB(); // ошибка Object reference not set to an instance of an object
            }
        }
        public int accessRequest()
        {
            _OnaccessAccept();
        }

    [GuidAttribute("45263A05-8EEB-4809-9DA5-DEC94334FB87")]
    [InterfaceTypeAttribute(ComInterfaceType.InterfaceIsDual)]
    public interface serverFormulaEvents
    {
        [DispId(1)]
        void accessAcceptCB();
    }
}


Получаю tlb, делаю _TLB.pas, устанавливаю компонент. Указываю обработчик для OnaccessAccept (кроме имени ничего общего не имеет с указанным в коде), но возникает ошибка см. код. Где траблы?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.