2017-06-27 44 views
2

MATLAB sendmail関数を使用して電子メールを送信しようとしています。私は、このリンク上のMathworks社でsendmailの機能解析の指示に従ってされています:https://uk.mathworks.com/help/matlab/import_export/sending-email.htmlsendmail関数を使用してMATLABを介して電子メールを送信

私は、コマンド・ウィンドウで使用されるコードは以下の通りです:

setpref ('Internet','E_mail','[email protected]'); 
setpref ('Internet','SMTP_Server','smtp.gmail.com') ; 
sendmail('[email protected]','texttobesent') ; 

私が実行した後に取得していますメッセージこれらのコマンドは以下の通りです:

エラーのsendmailを使用して(ライン169)

SMTPホストに接続できませんでした:smtp.gmail.comポート:25;

接続がタイムアウトしました:私は私が呼んで第二はsetPref関数内の引数を変更する必要があります理解し、私はGmailのSMTPポートに基づいて、それらを、それを含めて正確に何を確認していないものの、より

を接続しますそれが返されます。どんな助けも非常に高く評価されるでしょう!前もって感謝します!

+0

私はニアことを使用してきましたが、あなたは設定でパスワードを入力してはいけませんか? –

+0

実際、sendmail関数(R2016bの76行目)は 'getpref( 'Internet'、 'SMTP_Password'、 '')を呼び出すので、おそらく' setpref( 'Internet'、 'SMTP_Password' 、 'mypassword'); ' –

+0

こんにちは、あなたの答えに感謝します。私もこれをやろうとしましたが、私はMATLABから同じメッセージを受け取りました。 –

答えて

1

また、SSL関連の設定が必要な場合もあります。 $ g_smtp_hostと$ g_smtp_passwordとsmtp_passwordはほかに以下を追加してみてください、そして、それはGmailのために働く必要があります。

props = java.lang.System.getProperties; 
props.setProperty('mail.smtp.auth', 'true'); 
props.setProperty('mail.smtp.socketFactory.class', 'javax.net.ssl.SSLSocketFactory'); 
props.setProperty('mail.smtp.socketFactory.fallback', 'false'); 
props.setProperty('mail.smtp.socketFactory.port', '465'); 
0

@Xiangru Liが彼の答えに言ったように、SSLに関連が実際に必要とされている設定。しかしそれだけでは不十分でした。最終的には、Googleの設定を変更して、安全性の低いアプリのアクセスを有効にする必要がありました。これを行う方法についての詳細は、このリンクで見つけることができます:https://support.google.com/accounts/answer/6010255?hl=en

だから、これをやった後、次のコードは成功だったと私はそれで電子メールを送信するために管理:

setpref('Internet','SMTP_Server','smtp.gmail.com'); 
setpref('Internet','E_mail','myemailaddress'); 
setpref('Internet','SMTP_Username','myusername'); 
setpref('Internet','SMTP_Password','mypassword'); 
props = java.lang.System.getProperties; 
props.setProperty('mail.smtp.auth','true'); 

props.setProperty('mail.smtp.socketFactory.class','javax.net.ssl.SSLSocketFactory'); 

props.setProperty('mail.smtp.socketFactory.port','465'); 
sendmail('emailofreceiver','testtobesent') ; 
関連する問題