SMTP Eメール関数を使用した際に発生するエラーの原因と対策

更新しました Dec 18, 2023

使用製品

ソフトウェア

  • LabVIEW Base
  • LabVIEW Full
  • LabVIEW Professional

問題

SMTP(Simple Mail Transfer Protocol)EメールVIを使用してLabVIEWからEメールを送信しようとすると、エラー1、エラー62、またはエラー63が発生します。これらのエラーを回避するにはどうすればよいですか?

解決策

SMTP EメールVIがエラーを引き起こす原因はいくつか考えられます。最も一般的な原因と対策は次のとおりです。
 

サーバ名が間違っている

多くの企業が独自のSMTPメールサーバを利用しています。ただし、サーバ名は必ずしも会社のウェブサイトまたは電子メールの拡張子と同じではありません。SMTPサーバ名とIPアドレスの詳細については、企業のIT部門またはインターネットサービスプロバイダに問い合わせることをお勧めします。

 

メールサーバがダウンしている

時折、メールサーバがダウンして電子メール要求を処理できないことがあります。この状況下では、サーバが再びバックアップされるまでSMTP EメールVIはメールを送信できません。この問題のトラブルシューティングはかなり簡単で、コマンドプロンプトを使って行うことができます。コマンドプロンプト(スタート>>プログラム>>アクセサリ>>コマンドプロンプト)を開き、ping [メールサーバ名] と入力して、メールサーバー名をpingします。

サーバが応答を発行した場合は、メールサーバがアクティブであることを確認できます。メールサーバにpingを実行してもタイムアウトになる場合は、サーバが停止しているか存在しません。さらに、メールサーバが物理的に停止していると、そのサーバから従来のLotusまたはOutlookなどのメールアカウントでEメールを受信することはできません。サーバから従来のEメールを受信できれば、サーバは正しく機能しています。

 

SMTPポート25がPCによってブロックされている

考えられる3つ目のエラーの原因は、ポート25がコンピュータによってブロックされていることです。セキュリティ上の理由からファイアウォールと一部のアンチウイルスサービスの両方がポート25を頻繁にブロックするため、これは一般的なエラーです。これが問題にならないようにするには、すべてのファイアウォールおよびアンチウイルスソフトウェアを無効にして、VIをもう一度実行してみてください。Windowsファイアウォールソフトウェアを使用すると、さまざまなポートで例外を設定できます。したがって、ファイアウォールをオンのままにして、ポート25(SMTP)を開くように設定するだけで済みます。

SMTP接続をテストするためのトラブルシューティング手法の1つにtelnetコマンドがあります。コマンドプロンプト(スタート>>プログラム>>アクセサリ>>コマンドプロンプト)を開いてtelnet [メールサーバ名]と入力すると、メールサーバに接続できます。ポートがブロックされている場合、接続の試行は失敗します。

 

インターネットサービスプロバイダ(ISP)がTCPポート25(SMTP)をブロックしている

SMTP VIエラーは、ポート25がISPによってブロックされているときに発生する可能性があります。多くの商用インターネットサービスプロバイダ(ISP)は、スパムとマルウェアのトラフィックのためにポート25をブロックしています。上記のトラブルシューティング方法でサーバに接続できない場合は、サーバ管理者またはISPに連絡してください。ごくまれに、インターネットプロバイダに連絡する機会がない場合は、ポート465またはポート587を使用してみることができます。ポート465は、SSLを介した安全な接続をサポートしています。ポート587はほとんどすべての送信SMTPサーバで使用でき、暗号化されていない接続またはTLS接続をサポートしています。

追加情報

場合によっては、セキュリティ上の理由から、ファイアウォールを削除したりウイルススキャンソフトウェアを無効にしたりすることができません。このような場合でも、ActiveX呼び出しを使用して現在の電子メールソフトウェアにLabVIEWから電子メールを送信することは可能です。ActiveXプログラミングは、Microsoft Outlookなどの既存のソフトウェアから登録されているコンポーネントを使用します。したがって、ActiveXプログラミングでは、Outlookエンジンを使用してLabVIEWから電子メールを送信できます。