최근 특정 고객 사이트에 배포해서 사용 중인 대용량 첨부 기능이

Outlook 2016에서 동작하지 않는다는 말을 듣고 Add-ins 코드를 디버깅 해봤다.


일단 나타난 증상은 아래와 같이 "구현되지 않았습니다" 라는 썰렁한 메시지가 출력되는 것인데...




대용량 첨부 업로드 기능 자체는 정상 동작했고

그 이후에 Outlook 메일 본문으로 HTML 문자열을 삽입하는 부분에서 오류가 발생하는 것이었다.





정상 동작하지 않는 Outlook 2016 환경을 구성하는 데 시간을 엄청 썼는데... 그건 나중에 짚어보고,

일단 아래와 같이 코드 중간 중간에 디버깅 라인을 넣고 다시 배포해봤다.

(당연히... Visual Studio도 설치되어 있지 않고, 원격 디버깅도 불가능한 환경이므로

Debug View를 이용해서 디버깅 문자열을 찍는 방식으로밖에 디버깅 할 수 없었다.)



try

{

...


Debug.WriteLine("XML: " + recipXml);

MailItem currentItem = (MailItem Globals.ThisAddIn.Application.ActiveInspector().CurrentItem;

XmlDocument document = new XmlDocument();

document.LoadXml(recipXml);

XmlNode xmlNode = document.GetElementsByTagName("data").Item(0);

Debug.WriteLine("BodyFormat: " + currentItem.BodyFormat);

string htmlBody = currentItem.HTMLBody;

}

catch (Exception exception)

{

Debug.WriteLine(exception.ToString());

MessageBox.Show(exception.Message);

}


찍힌 문자열을 보니 아래와 같았다.




이런,


COMException (0x84104001): 구현되지 않았습니다.


MailItem 개체의 HTMLBody 속성에 접근할 때 오류를 뿜어내고 있는 것이었다.

Outlook 2010, Outlook 2013까지는 전혀 문제 없이 잘 동작하던 것이었는데 말이다.


황당...


인터넷을 구석구석 샅샅이 뒤져봤지만 딱히 내 경우와 100% 일치하는 경우는 없었고

대략 그나마 유사하다 싶은 것들을 보니,


>> 참조1: https://social.msdn.microsoft.com/Forums/expression/ko-KR/c3bb6ec6-28c4-41b1-9bb5-611b6c22c598/-?forum=dotnetko


>> 참조2: http://answers.microsoft.com/en-us/office/forum/office_2016-outlook/outlook-2016-htmlformat-mailitem-cant-read-body/3217194e-c196-45ec-87bb-6033ceaae906?auth=1


이 정도가 보였다.


실망스러운 것은... 아직 전혀 답이 없는 문제라는 것?




그런데, 좀 더 테스트를 해 보니

문제는 이 오류가 Microsoft Office Professional Plus 2016 버전에서만 발생한다는 점이었다.

즉, 같은 컴퓨터에 최신 Office 365 ProPlus 버전을 설치하면 오류가 발생하지 않고 정상 동작했다.




이렇게 말이다.



정상 동작한 바로 위 Outlook 2016 버전은 아래와 같이 빌드 번호가 16.0.6965.2063이었고,




비정상 오류가 발생한 버전은 빌드 번호가 16.0.4266.1001이었다. (2016년 7월 현재 기준)

물론 최초 설치 후 Windows Update를 전혀 하지 않은 낮은 버전에서도 문제는 동일하게 발생했다.




이것으로 보아 Office 2016 Professional Plus 2016 버전의 버그임이 확실한 것 같다.


대체 어쩌라고!!! 우쒸!


Office 365 버전이 먼저 업데이트 되고 나중에 데스크톱 버전이 업데이트 되는 요즘의 추세를 보자면

조만간 문제가 수정이 될 것 같긴 하지만, 그건 또 알 수 없는 일이기도 하다.


이후 문제가 수정된 것이 확인되면 다시 업데이트해야겠다.

그 전에는 해당 기능을 사용할 수 없다. 떱.


끝.





Posted by 떼르미
,


자바스크립트를 허용해주세요!
Please Enable JavaScript![ Enable JavaScript ]