
ASPでBASP21を使用してメールを送信しようとしたのですが、SMTPサーバーが停止していたため処理結果が取得できませんでした。
このような場合、何か良い対策はありませんでしょうか。
ご教示の程よろしくお願いいたします。
以下にソースの概要を記載いたします。
Dim objBasp21
Dim strMailSendErr
Set objBasp21 = CreateObject("Basp21")
strMailSendErr = objBasp21.SendMail(パラメータ)
'↑↑↑ メールサーバが停止している場合ここで処理が止まってしまう?
If strMailSendErr <> "" Then
'エラーの場合の処理
End If
No.1ベストアンサー
- 回答日時:
メールサーバが止まっていてもエラーが返されるだけだと思いますけど・・・?
Time Out とか Not Connect とかが返ってきたように記憶しています。
既存のメーラで送っても同じようなエラーが返されますか?
失礼ながら『パラメータ』の所で何か問題発生かも。
『止まる』事は無かったように記憶しています。
『メールサーバが停止している』事は確認されましたか?
以下、BASP21のヘルプとほとんど一緒ですが (^^ゞ
Sub SendMailQ()
'http://www.hi-ho.ne.jp/babaq/
Dim objBASP21 As Object 'BASP21
Dim strMessage As String '実行メッセージ
Dim strSvName As String 'SMTPサーバ
Dim strMailTo As String '宛先メールID
Dim strMailFrom As String '送信元ユーザID
Dim strSubj As String '表題
Dim strBody As String '本文
Dim strFiles As String '添付ファイル
On Error GoTo AcErr
'----( オブジェクト生成 )---------------------------------------
Set objBASP21 = CreateObject("basp21")
'----( パラメータ設定 )-----------------------------------------
strSvName = "mail.goo.ne.jp" 'SMTPサーバ名
strMailTo = "あんたへ<*********@mail.goo.ne.jp>" '宛先メールID
strMailFrom = "私" & "<*********@mail.goo.ne.jp>" '送信元ユーザID
strSubj = "テスト発信" '表題
strBody = "送ってみました" & vbCrLf & "届いた" '本文
strFiles = "c:\windows\clock.avi" & vbTab & "c:\windows\winnt.bmp" '添付ファイル
strMessage = objBASP21.SendMail _
(strSvName, strMailTo, strMailFrom, strSubj, strBody, strFiles)
'----( エラー判断 )-----------------------------------------------
If strMessage <> "" Then
MsgBox strMessage 'メッセージが表示される場合はエラー
Else
MsgBox "終了"
End If
Set objBASP21 = Nothing
Exit Sub
AcErr:
Select Case err.Number
Case Is = 429
MsgBox "BASP21がインストールされてないかも"
Case Else
MsgBox "ErrorNo= " & err.Number _
& vbCrLf & err.Description
End Select
Set objBASP21 = Nothing
End Sub
@酔なのでごめん・・・
WinXPpro or 2000 & Access2002 or 2000 と仮定しています。
返信が遅くなりまして申し訳ございません。
エラー判断のところで適切な処理ができていませんでした。
strMailSendErrにはエラー内容が返されていることを確認いたしました。
私の初歩的なミスです。
お手数をお掛けして申し訳ございません。
ご親切なご回答ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
UserForm1.Showでエラーになり...
-
【VBA】ワークブックを開く時に...
-
お助けください!VBAのファイル...
-
VBAでfunctionを利用しようとし...
-
実行時エラー 438 の解決策をお...
-
文字列内で括弧を使うには
-
VBAのリストボックスで、横スク...
-
インポート時のエラー「データ...
-
「実行時エラー '3167' レコー...
-
【Access】Excelインポート時に...
-
Filter関数を用いた結果、何も...
-
On ErrorでエラーNoが0
-
ACCESS97 実行時エラー '2455'...
-
コンボボックスの特定項目だけ...
-
VB2010でデータグリッドビュー...
-
ActiveCell.FormulaR1C1の変数
-
【VB.NET】 パワポ操作を非表示で
-
ExecuteNonQueryメソッドの戻り値
-
実行時エラー'-2147467259(8000...
-
マクロで"#N/A"のエラー行を削...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
UserForm1.Showでエラーになり...
-
お助けください!VBAのファイル...
-
VBAでfunctionを利用しようとし...
-
【VBA】ワークブックを開く時に...
-
マクロで"#N/A"のエラー行を削...
-
文字列内で括弧を使うには
-
String""から型'Double'への変...
-
【Access】Excelインポート時に...
-
VBA データ(特定値)のある最...
-
On ErrorでエラーNoが0
-
インポート時のエラー「データ...
-
ACCESSで値を代入できないとは?
-
VBA エクセル で FIND でのエラ...
-
Filter関数を用いた結果、何も...
-
レコード登録時に「演算子があ...
-
ApplicationとWorksheetFunctio...
-
Excel vbaについての質問
-
【VBAエラー】Nextに対するFor...
-
実行時エラー 438 の解決策をお...
-
「実行時エラー '3167' レコー...
おすすめ情報