2016-09-17 47 views
0

我們在我們自己的域中有一個郵件標識。 我們將其配置在outlook以及office 365中。Outlook和Office 365不顯示使用使用vb.net開發的外部軟件發送郵件的已發送項目

我們使用的軟件是用vb.net開發的商業用途。

使用此軟件,我們通過我們自己的郵件ID(例如[email protected])向我們的客戶發送郵件。

客戶還可以正常收到郵件。

問題是我們無法在Outlook和Office365的「已發送郵件」中看到發送的郵件。

發送的項目不同步。

 Dim mailbody As String = "" 
     Dim Smtp_Server As New SmtpClient 
     Dim e_mail As New MailMessage() 
     Smtp_Server.UseDefaultCredentials = False 
     Smtp_Server.Credentials = New     Net.NetworkCredential("[email protected]", "password") 

     Smtp_Server.Port = 587 
     Smtp_Server.EnableSsl = True 
     Smtp_Server.Host = "smtp.office365.com" 
     e_mail = New MailMessage() 
     e_mail.From = New MailAddress("[email protected]") 
     Dim attachment As System.Net.Mail.Attachment 
     e_mail.To.Add(New_Enquiry.MAIL_ID.Text) 
     e_mail.Subject = "Thankyou for your Enquiry" 
     e_mail.IsBodyHtml = True 
     Smtp_Server.Send(e_mail) 

這些是我在vb.net中使用的代碼。 它正常工作,但無法看到發送的郵件中發送的郵件。

我對gmail也使用了相同的代碼,並且Gmail顯示已發送郵件中的郵件。

請注意我的錯誤。

回答

0

Gmail很特別:通過SMTP服務器發送的任何內容都會顯示在已發送的文件夾中。這不是標準行爲:如果您希望郵件顯示在已發送的文件夾中,則必須將它們放在那裏,通常使用IMAP和APPEND命令。如果您擁有正確的訪問權限,則可以使用某種服務器端腳本爲您執行此操作,但這不是默認設置。

+0

對不起,因爲我是初學者,我無法跟隨你。你說過「如果你想要在你的發送文件夾中顯示消息,你必須把它們放在那裏」我無法清楚地知道這一點。 –

+0

郵件不會自動顯示在發送的文件夾中。如果你想要發送文件夾中的消息,你的程序必須在那裏上傳它們。像thunderbird這樣的電子郵件客戶端首先通過SMTP將消息發送到目的地,然後使用IMAP將第二個副本上傳到已發送文件夾。 Gmail是一個例外,因爲他們已經爲您自動完成第二部分,但這是非標準的。 – Max

+0

讓我說得有所不同。如果有東西在發送文件夾中,那麼有些程序必須放在那裏。 「服務器必須這樣做」或「客戶端必須這樣做」沒有任何規則。 Gmail做到了,Exchange不做。如果你想讓它發生,你必須使用一個服務器來完成它,或者寫一個客戶端代碼來完成它。 – arnt

相關問題