C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 68 を表示中)
■39462 / )  ASP.NET:メール送信の方法
□投稿者/ Lisa (1回)-(2009/08/08(Sat) 15:49:57)

分類:[ASP.NET (VB)] 

ASP.NETのWebページからメール送信するプログラムを作りたいのですが、うまく出来ません。
間違ってる所を教えてください。

開発:VWD2005 VB
サーバ:ASP.NET2.0 + Ajax1.0
本:10日でおぼえるASP.NET2.0入門教室

↓このページを参考に作ってます。
http://www.atmarkit.co.jp/fdotnet/dotnettips/696jismail/jismail.html

【WebMail.aspx】
<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

    Protected Sub btnSend_Click(ByVal sender As Object, ByVal e As System.EventArgs)
        Send_JIS_Mail()
    End Sub
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>無題のページ</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        WebMail送信<br />
        <asp:Button ID="btnSend" runat="server" Text="メール送信" OnClick="btnSend_Click" /></div>
    </form>
</body>
</html>


【App_Codeの中にSend_JIS_mail.vb】
Imports System.Text
Imports System.Net.Mail

Private Function myEncode(ByVal str As String, ByVal enc As System.Text.Encoding) As String
    Dim base64str As String = Convert.ToBase64String(enc.GetBytes(str))
    Return String.Format("=?{0}?B?{1}?=", enc.BodyName, base64str)
End Function

Private Sub Send_JIS_Mail()
    Dim smtp As New SmtpClient()
    Dim msg As New MailMessage()
    Dim myEnc As Encoding = Encoding.GetEncoding("iso-2022-jp")

    ' 送信元
    msg.From = New System.Net.Mail.MailAddress( _
                    "lisa777@hoge.co.jp", myEncode("リサ", myEnc))
    ' 送信先
    msg.[To].Add(New System.Net.Mail.MailAddress( _
                    "lisa777@hoge.co.jp", myEncode("リサ", myEnc)))
    ' 件名
    msg.Subject = myEncode("EX-4:件名はabcです", myEnc)

    ' 本文
    Dim sBody As String = _
      "Send_JIS_Mail()" & Chr(13) & "" & Chr(10) & _
        " AlternateViewによる本文の指定を行いました。"
    Dim altView As AlternateView = _
      AlternateView.CreateAlternateViewFromString( _
        sBody, myEnc, System.Net.Mime.MediaTypeNames.Text.Plain)
    altView.TransferEncoding = _
      System.Net.Mime.TransferEncoding.SevenBit
    msg.AlternateViews.Add(altView)

    smtp.Host = "smtp.hoge.co.jp" ' SMTPサーバ
    smtp.Send(msg) ' メッセージを送信
End Sub

【VWD2005のエラーメッセージ】
Send_JIS_Mail.vbの4行目と9行目
名前空間のステートメントが無効です。
WebMail.aspxの8行目
名前'Send_JIS_Mail'は宣言されていません。

よろしくお願いします。

返信 編集キー/


管理者用

- Child Tree -