ASPはJMail、CDOでメールを送る

5167 ワード

前の时间は1つの简単なJMAILメールのメールのコードを送ったことがあって、今日このコードを1つの具体的な注釈をして、そして别の2つのフォーマットのコードを増加して、そしていくつかの简単な例を挙げます:
まずjmail.smtpmailのコアコードです.
 プログラムコード
  Set jmail = Server.CreateObject("JMAIL.SMTPMail")   'JMAILオブジェクトの作成
  jmail.silent = true   'JMAILは例外エラーを投げ出さず、FALSEとTRUEの値を返します.
  jmail.logging = true   '使用ログの有効化
  jmail.Charset = "GB2312"  'メール文字のコードは簡体字中国語です
  jmail.ContentType = "text/html"  'メールのフォーマットがHTMLの
  jmail.ServerAddress = "Server Address"   'メールを送信するサーバ
  jmail.AddRecipient Email    'メールの受信者
  jmail.SenderName = "SenderName"    'メール送信者の名前
  jmail.Sender = "Email Address"    'メール送信者のメールアドレス
  jmail.Priority = 1   'メールの緊急プログラム、1 最も速い5 最も遅いのは、 3 デフォルト
  jmail.Subject = "Mail Subject"  'メールのタイトル
  jmail.Body = "Mail Body"   'メールの内容
  jmail.AddRecipientBCC Email   '秘密の宛先
  jmail.AddRecipientCC Email   '郵便物の差出人の住所
  jmail.Execute()   'メール送信の実行
  jmail.Close    'メール・オブジェクトを閉じる
%>
現在では、サーバのローカルsmtpサービスを使用して送信され、smtp認証が行われていないという大きな欠陥があります.
サーバが認証を使用する必要があるように設定されている場合、送信は失敗します.スパム対策の必要性から、このような設定の問題を重視するサーバが増えています.この方法で送信すると突然異常になります.
サーバが匿名送信を制限している可能性があり、上のコードは正常に動作しません.
この方法は推奨されていませんが、現在はaspプログラムが多く使用されているため、正常に動作する可能性がありますが、今後も正常であることを保証することは難しく、一部のメールサーバはこの方法で送信されたメッセージを拒否するので、可能であれば、できるだけ使用しないでください.
w3 Jmail 4.3コンポーネントは、元の単一オブジェクトJmail.smtpmailの代わりにMessageオブジェクトを使用してメールを送信する内部構造を再設計しました.認証が必要な方法(163、yahooなど)もあります.次の方法で解決できます.
 プログラムコード
     Set jmail = Server.CreateObject("JMAIL.Message")   'メールを送信するオブジェクトの作成
     jmail.silent = true    '例外エラーをブロックし、FALSEとTRUEの2値jを返す
     mail.logging = true   'メールログの有効化
     jmail.Charset = "GB2312"     'メールの文字コードは国標とする
     jmail.ContentType = "text/html"    'メールの形式はHTML形式です
     jmail.AddRecipient Email     'メールの宛先
     jmail.From = "Email From for Sender"   '送信者のE-MAILアドレス
     jmail.MailServerUserName = "UserName of Email"     'メールサーバへのログインに必要なユーザー名
     jmail.MailServerPassword = "Password of Email"     'メールサーバへのログインに必要なパスワード
     jmail.Subject = "Mail Subject"    'メールのタイトル 
     jmail.Body = "Mail Body"      'メールの内容
     jmail.Prority = 1      'メールの緊急プログラム、1 最も速い5 最も遅いのは、 3 デフォルト
     jmail.Send("Server Address")     'メール送信の実行(メールサーバアドレス経由)
     jmail.Close()   'オブジェクトを閉じる
%>
このコードを使用して送信することは、現在最も安定しており、最も適用可能な送信方法であり、Jmailを使用して送信するお客様には、この方法を使用して送信することをお勧めします.
もう一度 マイクロソフトが持参したCDONTSコンポーネントの発信方法:
 プログラムコード
    Set cdomail = Server.CreateObject("CDONTS.NewMail")  'メール・オブジェクトの作成
    cdomail.Subject = "Mail Subject"   'メールタイトル
    cdomail.From = "Sender's Mail"   '差出人の住所
    cdomail.To = "Email will from"   '受信者のアドレス
    cdomail.Body = "Mail Body"   'メールの内容
    cdomail.Send    '送信の実行
%>
私たちはプログラムを書きます.一般的にはコードをモジュール化し、メンテナンスが便利で、移植も便利です.そこで、私はここでこのメールをサブルーチンとして書き、呼び出すときに直接呼び出すことができます(もちろん、関数として喜んで書けばいいですが、これは主に個人の興味を見ています):
推奨

     '     
  
  'Subject     : 
  'MailAddress :  , smtp.163.com
  'Email       : 
  'Sender      : 
  'Content     : 
  'Fromer      : 

  Sub SendAction(subject, mailaddress, email, sender, content, fromer) 
      Set jmail = Server.CreateObject("JMAIL.SMTPMail")   ' JMAIL
      jmail.silent = true   'JMAIL , FALSE TRUE
      jmail.logging = true   '
      jmail.Charset = "GB2312"  '
      jmail.ContentType = "text/html"  ' HTML
      jmail.ServerAddress = mailaddress   '
      jmail.AddRecipient Email    '
      jmail.SenderName = sender   '
      jmail.Sender = fromer    '
      jmail.Priority = 1   ' ,1  ,5  , 3 
      jmail.Subject = subject  '
      jmail.Body = content   '
      ' , , ,
      'jmail.AddRecipientBCC Email   '
      'jmail.AddRecipientCC Email   '
      jmail.Execute()   '
      jmail.Close    '
  End Sub

  ' Sub
  Dim strSubject,strEmail,strMailAdress,strSender,strContent,strFromer
  strSubject     = " JMAIL "
  strContent     = "JMail !"
  strEmail       = "[email protected]"
  strFromer      = "[email protected]"
  strMailAddress = "mail.ubbcn.com"

  Call SendAction (strSubject,strMailaddress,strEmail,strSender,strContent,strFromer)

%>