다음은 현재 사용중인 코드입니다. 나는 구원 개체를보고 시간을 보냈지 만 한 것도 나를 밖으로 이동하지 :Redemption 사용, 보내는 전자 메일 메시지에 기본 서명을 추가하려면 어떻게합니까?
1
A
답변
0
C : \ Users \ UserName \ AppData \ Roaming \ Microsoft \ Signatures 폴더에서 서명을 읽는 oMail.HTMLBody에 추가 할 코드를 추가했습니다. 이 파일은 개발자가 사용자 이름, 직위, 전화 번호, 팩스 번호 등을 결정하기 위해 Exchange의 정보를 읽는 플러그인을 통해 생성됩니다.
0
서명 실제로 인스턴스에 대한 전망 관리자 객체로 삽입,
public static bool PopEmail(string domainUserName, string mSubject, string mBody, string mTo, string mCc = "", string mBcc = "", List<String> fileAttachments = null)
{
log.Info("Starting to Pop Outlook Email Message");
RDOSession oSession = new RDOSession();
try
{
oSession.LogonExchangeMailbox(domainUserName, string.Empty);
if (oSession.LoggedOn)
{
RDOMail oMail = oSession.GetDefaultFolder(rdoDefaultFolders.olFolderOutbox).Items.Add("IPM.Note");
oMail.Subject = mSubject;
oMail.Body = mBody;
oMail.To = mTo;
oMail.CC = mCc;
oMail.BCC = mBcc;
if (fileAttachments != null)
{
foreach (string file in fileAttachments)
{
object newFile = file;
oMail.Attachments.Add(newFile, Type.Missing, Type.Missing, Type.Missing);
newFile = null;
}
}
oMail.Display();
Marshal.FinalReleaseComObject(oMail);
oMail = null;
}
oSession.Logoff();
Marshal.FinalReleaseComObject(oSession);
oSession = null;
GC.Collect();
GC.WaitForPendingFinalizers();
log.Info("Outlook Email has been Popped.");
return true;
}
catch (Exception)
{
log.Error("Outlook Pop Email Failed.");
throw;
}
}
감사합니다, 그래서 당신의 코드 경우 Outlook addin에서 실행중인 항목을 저장 한 다음 _MailItem
을 통해 _Namespace.GetItemFromId
을 통해 OOM에서 다시 연 다음 해당 GetInspector
메서드를 호출 할 수 있습니다. 실제로 반환 된 관리자 참조로는 아무 것도하지 않아도됩니다.
RDO를 통해 처음 생성 된 항목은 사용하지 않았습니다. 일반적으로 OOM에 항목을 만든 다음 RDO 래퍼를 만듭니다.
코드가 Outlook 외부에서 실행되는 경우 OLE를 사용하여 _Application
개체에 대한 참조를 가져온 다음 _Namespace
개체를 여기에서 가져옵니다. Outlook을 설치하지 않고 독립 실행 형 MAPI를 사용하는 경우 서명 기능을 완전히 사용할 수 없습니다.
서명을 읽는 oMail.HTMLBody에 추가 할 코드가 추가되었습니다 C : \ Users \ UserName \ AppData \ Roaming \ Microsoft \ Signatures 폴더에서 가져옵니다. 이 파일은 Exchange에서 사용자 이름, 제목, 전화 번호, 팩스 번호 등을 확인하기 위해 정보를 읽는 개발자가 작성한 플러그인을 통해 생성됩니다. 답변 해 주셔서 감사합니다. – ElMatador