7

.NETを使用して受信メールをプログラムで読み取るにはどうすればよいですか。POPサーバーで電子メールメッセージ(この場合はXML)のコンテンツを取得してアプリケーションに読み込むメソッドが必要です。

理想的には、これは次の方法で解決できます。

  • 電子メールを処理するためにWebサーバーでバックグラウンドタスクとして実行できる.NETコード。
  • 電子メールの内容をWebサーバーにPOSTできるサービス。

私は他のオプションを開いていますが。

編集:「非回答」からコピー:

現在、ホスティング会社が提供するメールアカウントの使用を検討しています。

私たち自身のメールサーバーは潜在的にオプションかもしれませんが、それについて私たちがホストに連絡する必要があるものです。

4

5 に答える 5

4

私たちは実際に同じ種類のものを実装しました。

メール メッセージの内容を処理し、Web サービスを介してデータを CRM にプッシュします。.net 3.5 で c# を使用します

メールを処理するために、 IMap を使用しました。CodeProject にはいくつかの .net クライアント ライブラリがあります。LumiSoftのものを使用したと思います。

WebDav を試しましたが、うまくいきませんでした。これにより、Pop3 または IMap が残りました。IMap は必要なフォルダをサポートしていたので、それを採用しました。サーバーが IMap をサポートしていない場合、POP3 で同じことを行うのは簡単だと思います。

基本的に、1 時間ごとに Exchange サーバーに接続し、新しいメールを取り出して処理します。これまでのところ、うまく機能しています。

編集: また、SharpMimeToolsを使用して生のメールをより使いやすい形式に変換します。

于 2009-01-15T22:16:12.883 に答える
2

.Net 用の無料の POP3 クライアント実装が多数あります。

例:これ.

于 2009-01-15T22:27:25.060 に答える
1

かなりの数のオプションがあります。サービスバスを自由に使用できる場合は、ほとんどの場合、pop3アダプターが付属しています。

または、pop3 apiを使用することもできます(quiksoftからのeasymailは非常に優れています)。また、バウンスを処理するための優れた製品もあります。

すべてのSMTPメッセージを読み取るため。メールサーバーを所有している場合は、サーバーの種類に応じて、メッセージにアクセスする他の方法、場合によってはカスタムApiとプラグイン、またはファイルシステムがあります。独自のメールサーバーをホストしていますか?どのメールサーバーを使用していますか?

可能であれば、POPプロトコルを選択しない場合は、フォルダが1つしかない、メッセージを「取得/読み取る」とフォルダからメッセージが削除される(つまり、メッセージを読み取る1つのプロセス)など、いくつかの制限があります。 。解析する必要のあるメールの数によっては、それでも機能する場合があります。IMAPはすでに改善されているでしょう。

quiksoft IMAPコンポーネントの場合:

//create a new IMAP4 object, connect 
//to a IMAP4 server and login 
IMAP4 imap = new IMAP4();
imap.Connect("mail.yourdomain.com");
imap.Login("mailbox", "password");

//select the inbox and download the envelopes
imap.SelectMailbox("Inbox");
EnvelopeCollection imapEnvelopes;
imapEnvelopes = imap.GetEnvelopes();

//loop through each message
//and output the subject
foreach (Envelope imapEnvelope in imapEnvelopes)
{
   //write the subject out to the console
   Console.WriteLine(imapEnvelope.Subject);
}

//close resources
imap.Logout();
于 2009-01-15T22:03:46.560 に答える
0

POP 3 クラスのPOP は、より簡単なプロトコルの 1 つです。

于 2010-03-16T10:45:59.057 に答える
0

IceWarp の Merak 電子メール サーバーは、これに最適でした。これにより、実行可能アカウントと呼ばれる特別な種類のアカウントをセットアップできました。.exe を電子メール アドレスに関連付け、送信するものをコマンド ラインで選択します。メールがそのアカウントに送信されると、実行可能ファイルが起動されます。.exe はコンソール アプリである必要があり、ハングしないように注意する必要がありますが、完璧なソリューションだと思いました。

これを使用して、Google アナリティクスからの処理統計と、他のメール サーバーからのバウンス バックを処理します。

于 2009-01-15T22:27:49.957 に答える