2011-10-05 7 views
2

저는 지난 2 일 동안이 것을 알아 내려고 노력했습니다. 나는 정말로 가까이에있는 것처럼 느낀다. 그러나 단지 그것을 알아들을 수 없다. 나는 필요한 모든 정보가 포함 된 전자 메일을 성공적으로 보내기 위해 C# 프로그램을 받았지만 보낸 사람의 이름과 전자 메일 주소는 변경할 수 없습니다. 여기까지 내 코드는 다음과 같습니다.C#에서 Outlook 개체를 사용하여 전자 메일을 보낼 때 보낸 사람의 전자 메일 주소와 이름을 변경합니다.

Outlook.Application oApp = new Outlook.Application(); 

string emailrecipient = (Convert.ToString(txtAdmin1.Text) + "@domain.com"); 


      Outlook.MailItem email = (Outlook.MailItem)(oApp.CreateItem(Outlook.OlItemType.olMailItem)); 
      email.Recipients.Add(emailrecipient); 
      email.Subject = "Your Recent Admin Rights Request"; 
      email.Body = "Your admin rights request has been processed. The user " + txtAdmin1.Text + " has been added as an administrator on computer " + txtName.Text + ". Please reboot your computer for these changes to take effect."; 

      email.Send(); 

어떤 충고도 놀라운 것입니다. 나는 그 곳 곳곳을 수색했고, 지금까지 효과가있는 것을 발견하지 못했다.

+0

아무런 시도가 없습니다. 이 방법을 사용하여 전자 메일을 보내는 것이 어렵다고 생각하는 이유는 Outlook을 사용하여 전자 메일을 보내기 때문입니다. 당신이 단순히 다른 코드를 사용하여 이메일을 보낸다면. 발신자가 누구인지를 변경해야하는 이유는 무엇입니까? –

+0

http://msdn.microsoft.com/en-us/library/microsoft.office.interop.outlook._mailitem.sender.aspx는 여러 프로필을 설정 한 경우에만 작동합니다. –

+0

새로운 시도를하려는 시도를 삭제했습니다. 전자 메일이 본인의 개인 계정이 아닌 부서의 공유 전자 메일 계정에서 전송되도록 변경해야합니다. 둘 다 Outlook에 추가했습니다. – wcmayor

답변

0

나는 Outlook 개체 모델을 사용하기 때문에 From 속성이 읽기 전용 (SenderName/SenderEmailAddress라고 생각합니다)이라고 생각합니다.

Outlook은 특정 사용자의 컨텍스트에서 실행되므로 다른 자격 증명을 사용하여 Outlook에 로그인해야하는 사용자를 변경할 수 있습니다.

+0

Er, not true : 나는 할 수있다. 여러 Outlook 계정에서 메일을 보내면 프로필에 현재 6 개가 구성되어 있습니다. –

0

Interop.Outlook.dll을 사용하는 경우 서버에서 프로필 이름을 더 잘 변경하십시오.

관련 문제