예전에 테스트 해봤던 코드입니다.
gmail 을 이용해서 보냈었던거고 서버에 따라서 설정등이 달라집니다.
IdMessage1->From->Text = lbeSend->Text;
IdMessage1->Recipients->EMailAddresses = lbeReceive->Text;
IdMessage1->Body->Add( LabeledEdit4->Text); // 메일 내용
IdMessage1->Subject = LabeledEdit3->Text; // 제목
if (IdSMTP1) {
IdSMTP1->Host = "smtp.gmail.com"; // 받는 smtp 서버
IdSMTP1->Username= lbeUserName->Text.Trim();
IdSMTP1->Password= lbePassword->Text.Trim() ;
IdSMTP1->Port = 465;
IdSMTP1->AuthType = satDefault;
IdSMTP1->UseTLS = utUseImplicitTLS;
IdSSLIOHandlerSocketOpenSSL1->PassThrough = FALSE;
IdSSLIOHandlerSocketOpenSSL1->Destination = "smtp.gmail.com:465" ;
IdSSLIOHandlerSocketOpenSSL1->SSLOptions->Method = sslvTLSv1;
IdSSLIOHandlerSocketOpenSSL1->SSLOptions->Mode = sslmClient;
IdSMTP1->Connect(); // 10초
IdSMTP1->Authenticate();
try {
IdSMTP1->Send(IdMessage1);
MessageDlg("succ.", mtWarning, TMsgDlgButtons() << mbOK, 0);
}
__finally {
IdSMTP1->Disconnect();
}
}
궁금합니다 님이 쓰신 글 :
: idsmtp컴포런트를 이용해서 제 메일에 이메일을 보내고 싶은데 하는 방법을 모르겠습니다.
: 알려주시면 감사하겠습니다.
|