Я работаю для того, кто работает на сервере Windows 2003. Они хотят, чтобы я сделал SMTP-приемник, который может классифицировать, какую базу данных и таблицу мы хотим отправлять сообщениям. У них нет обмена на этом сервере, только виртуальный SMTP-сервер по умолчанию.C# ComVisible DLL не регистрируется
Я создал класс, который, как мне кажется, должен срабатывать при появлении SMTP-серверов при возникновении события. У меня проблема с регистрацией моего класса, однако, когда я запускаю RegAsm/regfile, я получаю сообщение «Warning, RA0000: никакой регистрации не будет, нет типов для регистрации». если я запустил RegAsm с/TLB, он скажет, что типы были зарегистрированы, но по классу не отображается в глобальном реестре, и мой класс не вызывается, когда почта отправляется на сервер. Я немного не понимаю, что я делаю неправильно.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;
namespace SMTPSink
{
[Guid("????-????-?????-????")]
[ComVisible(true)]
[ProgId("SMTPSINK")]
public class SMTPSink : CDO.ISMTPOnArrival
{
SMTPSink()
{ }
void CDO.ISMTPOnArrival.OnArrival(CDO.Message Message, ref CDO.CdoEventStatus EStatus)
{
//Simple test to see if this fires on mail arrival
}
}
}
Это сработало, я действительно не понимаю, почему. Большое спасибо. – AlexLordThorsen