2

나는 전자 메일 (디버깅을위한 예외 데이터 및 기타 정보를 갖게 될 로그 파일의 내용)을 보내려는 핸드 헬드 장치 소프트웨어의 사용자를 허용하려고합니다.Windows CE 장치 (Compact Framework)에서 전자 메일을 보내려면 어떻게합니까?

어떻게하면됩니까? 모든 사용자는 로그 파일의 내용을 보면서 수행해야하는데, 양식에서 주문형으로 표시됩니다. "보내기"버튼을 매시 누르십시오. 로그 파일의 내용 (표시되는 텍스트 상자에서 읽을 수 있음)은 제목이 "{사용자 이름} 로그 내용"과 같은 이메일 메시지 본문 (첨부 파일이 아님)이 될 수 있습니다.

이메일 주소를 입력하라는 메시지가 표시되면 괜찮을지 모르지만 보낸 사람으로 이메일 주소 중 하나를 사용하는 것이 좋을 것입니다. 그래야 우리와 우리 모두 (두 사람 다른 계정, 그래도).

+1

어떤 메일 프로토콜을 사용해야합니까? 이 작업은 [SMTP] (https://tools.ietf.org/html/rfc821) 서버에 대한 TCP 연결을 만드는 것보다 복잡해야합니까? – PaulH

+0

이 "world"(Windows CE/Compact Framework)에서 사용할 수있는 프로토콜은 무엇인지 알지 못합니다. IOW, 귀하의 질문에 대한 답을 결정하는 방법을 모르겠습니다. –

+1

OS가 기본적으로 지원하는 프로토콜이 없다고 생각합니다. 그래서, 내 질문은 "당신과 통신하려는 메일 서버가 어떤 프로토콜을 지원합니까?"입니다. 의도 한 메일 서버가 SMTP를 지원한다면 이것은 매우 쉽습니다. 그들은 아무것도 "단순한 메일"이라고하지 않습니다. – PaulH

답변

2

the SDFOpenNETCF.Net.Mail 네임 스페이스 개체를 사용하는 편도가 있습니다. 그것은 System.Net.Mail 개체처럼 작동하므로 전자 메일을 보내면 다음과 같이 보입니다.

var message = new MailMessage(); 

message.From = new MailAddress("[email protected]"); 
message.To.Add(new MailAddress("[email protected]")); 
message.Subject = "Hello World"; 
message.Body = "This is my message body"; 

var client = new SmtpClient(); 

client.Host = "smtp.myserver.com"; 
client.Credentials = new SmtpCredential("myusername", "mypassword", "mydomain"); 

client.Send(message); 
관련 문제