外部のeメールプログラムを使用せずにeメールを送信します。
#include <INet.au3>
_INetSmtpMail ( $s_SmtpServer, $s_FromName, $s_FromAddress, $s_ToAddress [,$s_Subject [,$as_Body [,$s_helo [,$s_first [,$b_trace]]]]])
パラメータ
$s_SmtpServer | eメール送信に使用するSMTPサーバー。通常はアルファベットまたは数値によるIPアドレス。スパムを防ぐために多くのISPではサーバーがこれを要求します。 例: "smtp.ispdomain.com"、"mail.ispdomain.com"、"192.168.1.1" |
$s_FromName | メッセージに送信者として表示したい名前。 例: "Bob Smith" |
$s_FromAddress | メッセージに送信者として表示したいeメールアドレス。 例: "bob.smith@mydomain.com". |
$s_ToAddress | メッセージ送信先のeメールアドレス。 例: "jane.brown@yourdomain.com" |
$s_Subject | [オプション] eメールの件名。 |
$as_Body | [オプション] eメールの本文。文字列の1次元配列。eメール内では配列内の各値の末端に@CRLFが付加されます。 |
$s_helo | [オプション] SMTPサーバー接続の識別子(デフォルトでは@ComputerName)。SMTPサーバーが"EHLO"を要求する場合は"EHLO " & @ComputerNameを設定します。 |
$s_first | [オプション] SMTPサーバー接続時にheloの前に送信する文字列(デフォルトは{SPACE})。何も送信しない場合はこのパラメータを-1に設定してください。SMTPサーバーによっては何も送信してはいけない場合があります。 |
$b_trace | [オプション] スプラッシュウィンドウのダイアログを表示 |
返し値
成功: | 1を返します。 |
失敗: | 0を返し、@errorを設定します。 |
@error: | 1 - 無効なパラメータです |
2 - TCPが開始できません | |
3 - IPが解決できません | |
4 - ソケットが作成できません | |
5x - SMTPセッションが開けません。xはSMTPサーバーに対して発行した最後のコマンドのインデックス番号を表します。 | |
50x - 本文を送信できません。xは$as_Bodyの行番号(0始まり)を表します。 | |
5000 - SMTPセッションが閉じられません |
注意
この関数はサードパーティーのeメールクライアントを使用せずにeメールを直接SMTPサーバーに送信します。AutoIt3 v 3.1.1.97以降が必要です。
関連
_INetMail
例
#include <INet.au3>
$s_SmtpServer = "mysmtpserver.com.au"
$s_FromName = "My Name"
$s_FromAddress = "From eMail Address"
$s_ToAddress = "To eMail Address"
$s_Subject = "My Test UDF"
Dim $as_Body[2]
$as_Body[0] = "Testing the new email udf"
$as_Body[1] = "Second Line"
$Response = _INetSmtpMail ($s_SmtpServer, $s_FromName, $s_FromAddress, $s_ToAddress, $s_Subject, $as_Body)
$err = @error
If $Response = 1 Then
MsgBox(0, "Success!", "Mail sent")
Else
MsgBox(0, "Error!", "Mail failed with error code " & $err)
EndIf