2013-06-26 80 views
2

我有Web應用程序,用戶可以設置SMTP服務器信息(服務器/主機,SMTP端口,用戶名,密碼,EmailAddress,usedSSL)。我需要當用戶設置信息validatre服務器沒有發送電子郵件和檢查是否smtp信息有效?如何在不發送電子郵件的情況下檢查smtp服務器?

我發現網站,完美的作品,並檢查SMTP服務器活着(但不驗證檢查).. http://mxtoolbox.com/diagnostic.aspx

編輯1:

坦@Dieter DHoker幫我找到評論Testing SMTP server is running via C# ...

反正是有,我檢查驗證信息(用戶名密碼& &電子郵件地址),因爲我需要檢查所有SMTP信息有效或無T'我之前詢問過。

+0

您可以使用'System.Net' ['Socket'](http://msdn.microsoft.com/en-us/library/system.net.sockets.socket.aspx)類來查看服務器響應。 – Romoku

+0

@Romoku坦,我知道我該如何使用插座檢查SMTP服務器,但我應該知道的SMTP協議,並請求與響應..我不'噸瞭解SMTP協議的足夠.. –

+2

參見: [HTTP ://stackoverflow.com/questions/1633391/testing-smtp-server-is-running-via-c-sharp] [1] [1]:http://stackoverflow.com/questions/ 1633391/testing-smtp-server-is-running-via-c-sharp –

回答

-1

SMTP中沒有用戶名和密碼(請參閱rfc 821),因此無法測試該用戶名和密碼。 您可以使用MAIL FROM和RCPT TO序列,但不發送任何DATA,以查看您是否被允許使用給定信息發送郵件,而不發送實際郵件。

+0

在'System.Mail.SmtpClient'有證書,我可以設置'smtpClient.Credentials =新的System.Net.NetworkCredential(用戶名,密碼)',我應該設置用戶名和密碼從Gmail或雅虎發送電子郵件..也許在SMTP協議中沒有認證信息,但我想也許它使用擴展協議或其他與SMTP相匹配的東西,我之前測試過它,併發送帶有空標題和空體的電子郵件(一旦測試空rcpt),但在我的測試中,我使用'gmail'獲取所有電子郵件,併爲空rcpt給我錯誤.. –

相關問題