0

skpsmtpやmailcoreなどのサードパーティのライブラリを使用せずに、客観的なcでsmtp接続を確認する方法を誰でも知っていますか? 助けてください。

4

1 に答える 1

0

リモート SMTP サーバー、ポート 25 への TCP ソケットを開くことをお勧めします。接続が開き、220 コードが返された場合は、サーバーが使用可能で到達可能であることを意味します。

これは、telnet コマンドに似ています。

sst:~ sst$ telnet relay.skynet.be 25
Trying 195.238.5.128...
Connected to relay.skynet.be (195.238.5.128).
Escape character is '^]'.
220 relay.skynet.be ESMTP
quit
221 relay.skynet.be
Connection closed by foreign host.

ただし、Cocoa でこれを行うには、いくつかのコーディングが必要です。これは、 http://developer.apple.com/library/mac/#documentation/cocoa/Conceptual/Streams/Streams.html#//apple_ref/doc/uid/10000188-SW1の Cocoa Stream Developer Guide に記載されています。

または、ここで説明されているように、古き良き C コードにフォールバックする選択肢が常にあります: C を使用して事前定義されたポートに接続する TCP ソケットを作成する方法

于 2012-12-28T11:04:02.477 に答える