2010-07-23 5 views
3

우리는 상업용 배포를 위해 C#에서 .Net Windows 응용 프로그램을 개발 중입니다. 나는 사용자가 자신의 PC에 이메일 클라이언트를 필요없이 응용 프로그램 내에서 바로 인터넷 연결을 이메일 수신자에 파일을 이메일로 할 수 있도록 기능을 추가 할C# Windows 응용 프로그램에서 첨부 파일을 전자 메일로 보내기

목적

. 발신자가 보낸 이메일은 보낸 사람의 이메일 주소 (발신자/수신자 필드에 있음)가 있어야 수신자가 이메일의 출처를 식별하고 응답 할 수 있습니다.

내가 System.Net.Mail 년은 MailMessage 클래스를 사용하고자했다

현재 접근하지만, 이메일을 보내도록 SMTP 서버가 필요합니다. 문제는 사용자가 응용 프로그램에서 전자 메일을 보내도록 구성해야한다는 것입니다. 우리가 설정하려고합니다. 즉, 전자 메일을 보내고 응용 프로그램에서 하드 코드 할 SMTP 서버를 정의하려고합니다.

Gmail을 SMTP 서버로 사용하려고했지만 Gmail의 SMTP 게이트웨이를 통해 사용자의 Gmail 주소로 보내는 모든 전자 메일의 "보낸 사람"줄이 자동으로 다시 쓰여지므로 한 가지 중요한 단점이 있습니다. 은 MailMessage 코드에서 우리가 설정에도 불구하고 호텔로부터 이메일을받은 [email protected]에, 보내는 사람 필드가 표시 [email protected]

질문

  1. 이 소프트웨어의 경우 응용 프로그램이 다른 네트워크 환경에있는 많은 사용자에게 배포 될 것입니다. 이 방법을 사용하는 것이 가장 좋습니다. 그렇다면 최종 사용자가 FROM 및 REPLYTO 필드를 정의 할 수 있도록하기 위해 응용 프로그램에 사용할 수있는 무료/공용 SMTP 서버가 있습니까?

  2. 나는 모든 ISP/단체가 임의의 SMTP 연결을 허용하지는 않지만 보낸 사람이 SPF 레코드를 구현하는 경우 메시지가 거부 될 수 있다고 말했습니다. 내 의도 된 접근 방식이 항상 작동하지 않을 수도 있다는 뜻입니까?

  3. 본래의 목표를 달성하는 데 사용할 수있는 다른 일반적인 또는보다 안정적인 방법이 있습니까?

답변

관련 문제