|
|
|
Supreme Being
      
участник
Last Login: 06.07.2008 10:37
Сообщ.: 236,
Visits: 1 734
|
|
| Добрый вечер. Есть задача отправки писем из приложения, решена на С++ через SIMPLE MAPI. Но начальство хочет чтобы это было сделано на С#, соответственно через FW. Не подскажет ли кто нибудь как такую проблему решить в .NET? SMTPClient кажется не подойдет, так как host мне неизвестен. При использовании SIMPLE MAPI применялся настроенный по умолчанию почтовый клиент и соответственно SMTP host был не нужен. Или я неправильно понял смысл использования SMTPClient и можно обойтись без host'а? PS: C# - Visual Studio 2005. FW 2.0
|
|
|
|
|
Forum Member
      
участник
Last Login: 27.02.2008 16:42
Сообщ.: 43,
Visits: 1 569
|
|
|
|
|
|
Supreme Being
      
участник
Last Login: 06.07.2008 10:37
Сообщ.: 236,
Visits: 1 734
|
|
К сожалению вот это:public class SmtpDirect{ ... public static string SmtpServer; public static bool Send(MailMessage message) { IPHostEntry IPhst = Dns.Resolve(SmtpServer); // Вызывает ошибку NOT BE NULL, если SmtpServer неуказан ... не позволит использовать Ваш ресурс :( Т.к. проблема в том, что я не знаю где будет использоваться мое приложение, и не могу жестко прописать один SMTP host. Настройку приложение не предусматривает, поэтому я и остановился на SIMPLE MAPI. (Естественно в приложении идет проверка на установку в системе mapi32.dll ) Но это в С++, а вот что делать в С# пока не пойму. Да и можно ли .NET пользоваться MAPI? Пробовал подключать MAPI как предлагают на pinvoke.net ( спасибо bazile! ) все вроде получилось, ошибок не выдает, но и сообщение не отсылается. Есть предположение, что я неправильно объявляю и открываю сессию: ... IntPtr session = IntPtr.Zero; uint error = MAPI32.MAPILogon( IntPtr.Zero,null, null,MAPI32.MAPI_NEW_SESSION, 0, ref session );
т.к. после выполнения MAPILogon session остается пустой. Если кто-то заинтересуется, могу предоставить весь код.
|
|
|
|
|
Supreme Being
модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240,
Visits: 65 445
|
|
| Я на 100% уверен что MAPI можно использовать из .NET. Microsoft приложила все усилия чтобы управляемый код мог использовать неуправляемый.
|
|
|
|
|
Supreme Being
      
участник
Last Login: 06.07.2008 10:37
Сообщ.: 236,
Visits: 1 734
|
|
|
|
|
|
Supreme Being
      
участник
Last Login: 06.07.2008 10:37
Сообщ.: 236,
Visits: 1 734
|
|
|
|
|