개체 모델을 사용할 때 Outlook 2010의 알려진 문제

원본 KB 번호: 2265515

요약

이 문서에서는 Microsoft Outlook 2010 개체 모델을 사용할 때 발생할 수 있는 알려진 문제에 대해 설명합니다.

관리자 권한 프로세스에서 개체를 만들 Outlook.Application 수 없음

Windows Vista, Windows 7 또는 관리자 권한으로 프로세스를 실행할 수 있는 다른 운영 체제에서 관리자 권한으로 실행되는 프로세스를 사용하여 Outlook을 자동화할 수 없습니다. 이는 COM의 기본 제한 사항입니다. Outlook을 자동화하는 Outlook 및 사용자 지정 프로그램은 모두 동일한 무결성 수준에서 실행되어야 합니다.

BeforeItemMove 및 BeforeFolderMove 이벤트가 발생하지 않음

BeforeFolderMove 이벤트가 발생하지 않는 여러 시나리오 BeforeItemMove 가 있습니다. 알려진 시나리오에는 To-Do 표시줄에서 약속 삭제, 일정 및 To-Do 표시줄에서 모임 삭제, 기본이 아닌 폴더에서 이벤트 구현, 대화 무시 명령을 사용하여 항목 삭제 등이 있습니다. 이러한 문제는 2010년 12월 Outlook 2010 누적 업데이트에서 해결되었습니다.

GetProperty 메서드가 온라인 모드에서 실패함

온라인 모드에서 Microsoft Exchange 2010을 사용하고 메서드를 GetProperty 사용하여 저장되지 않은 항목에서 속성을 검색하는 경우 메서드가 실패할 수 있습니다. 이는 Exchange 2010에서 명명된 속성을 처리하는 방식이 변경되었기 때문입니다. Outlook 2007도 영향을 받습니다. 현재 해결 방법은 다음과 같습니다.

  • 캐시된 모드에서 Outlook을 사용합니다.
  • 메서드를 호출 GetProperty 하기 전에 항목이 저장된 상태인지 확인합니다.

검사기 창이 올바르게 닫힙니다.

VSTO(Microsoft Visual Studio Tools for Microsoft Office)에서 함수를 구현 GetVisibleCallback 하는 경우 사용자가 검사기 창을 올바르게 닫지 못할 수 있습니다. 이 문제는 2011년 2월 Outlook 2010 누적 업데이트에서 해결되었습니다.

BeforeCheckNames 이벤트는 Outlook 2007에서 발생하는 것과 다른 시간에 발생합니다.

Outlook 2010에서 BeforeCheckNames 이벤트는 받는 사람이 확인되기 전이 아닌 해결된 후에 발생합니다. 즉, 이벤트를 취소해도 아무런 효과가 없습니다. 이 문제는 Outlook 2010 2011년 2월 누적 업데이트에서 수정되었습니다.

뷰 개체 모델은 사용자 인터페이스의 실제 보기와 일치하지 않을 수 있습니다.

프로그래밍 방식으로 보기를 변경하거나 보기 설정을 검색하는 경우 개체 모델의 설정이 Outlook이 사용자 인터페이스에 표시하는 실제 보기 설정과 일치하지 않을 수 있는 시나리오가 있습니다. 이 문제를 resolve 위해 Outlook 2010 2011년 2월 누적 업데이트에서 개선되었습니다.

항목 삽입 창을 사용할 때 첨부 파일이 올바르게 유지 관리되지 않습니다.

Outlook 개체 모델을 사용하여 첨부 파일을 추가하고 제거하는 경우 사용자가 항목 삽입 명령을 사용하여 항목 첨부 파일을 삽입하는 경우 추가 첨부 파일이 있을 수 있습니다. 이는 대화 상자가 모든 첨부 파일을 의심하지 않더라도 용의자로 처리하는 방식의 버그 때문입니다. 따라서 추가 첨부 파일은 메시지와 함께 저장됩니다. 이 문제는 2010년 2월 Outlook 2010 누적 업데이트에서 해결되었습니다.

POP/IMAP 계정을 사용하여 항목 첨부 파일을 삽입할 수 없음

메서드를 Attachments.Add 사용하여 POP/IMAP 계정을 사용하여 Outlook 항목 첨부 파일을 추가하는 경우 호출이 실패합니다. 이 문제는 2010년 12월 Outlook 2010 누적 업데이트에서 해결되었습니다.

MailItem.Recipients.ResolveAll 함수는 받는 사람 필드에서 받는 사람을 제거합니다.

사용자가 작성 모드의 메시지에 해결되지 않은 받는 사람을 추가한 다음 Recipients.ResolveAll 해당 항목에 대해 메서드를 호출하면 받는 사람이 제거됩니다. 이 동작을 변경할 계획은 없습니다.

GetAssociatedAppointment 보낸 편지함 폴더의 모임 요청에 대한 메서드가 실패함

보낸 편지함 폴더의 모임 요청에서 약속을 검색하려고 하면 통화가 실패합니다. 이 문제는 2011년 2월 Outlook 2010 누적 업데이트에서 해결되었습니다.

검사기 창이 열려 있는 경우 약속 데이터가 업데이트되지 않을 수 있습니다.

Outlook 2010에서 약속을 처리하고 캐시하는 방식의 내부 변경으로 인해 해당 약속이 검사기 창에서 열려 있는 경우 개체 모델이 약속 예외에 대한 최신 정보를 제공하지 않을 수 있습니다. 이 동작은 저장소에서 항목을 참조 해제하고 다시 검색하는 경우에도 발생합니다. 이 문제를 해결하려면 약속 창이 닫혀 있는지 확인합니다. 이 동작을 변경할 계획은 없습니다.

개체에서 Folder 개체를 NavigationFolder 가져오는 경우 "작업 실패" 오류 메시지가 표시될 수 있습니다. 이 문제는 Outlook 2010의 새로운 공유 일정 폴더 기능에서 발생합니다. Outlook이 NavigationFolder.Folder 초기화되기 전에 개체를 검색하면 이 문제가 발생합니다. 이 초기화는 기본적으로 수행되지 않습니다. 이 문제를 해결하려면 먼저 기본 일정 폴더를 참조하고 메서드를 호출합니다 GetExplorer . 이로 인해 Outlook에서 공유 일정을 간접적으로 초기화합니다. 다음 Outlook VBA 코드 예제에서는 이 문제와 해결 방법을 보여 줍니다.

Sub GetCalendars()
  ' Work around
  Set oCalFolder = Session.GetDefaultFolder(olFolderCalendar)
  Set oCalExp = oCalFolder.GetExplorer

  Dim oModules As Outlook.CalendarModule
  Dim oMyCalendarGroup As Outlook.NavigationGroup
  Dim oPeopleNavGroup As Outlook.NavigationGroup
  Set oModules = ActiveExplorer.NavigationPane.Modules.GetNavigationModule(OlNavigationModuleType.olModuleCalendar)
  Set oMyCalendarGroup = oModules.NavigationGroups.GetDefaultNavigationGroup(OlGroupType.olMyFoldersGroup)
  Set oPeopleNavGroup = oModules.NavigationGroups.GetDefaultNavigationGroup(OlGroupType.olPeopleFoldersGroup)
  GetNavFolders oMyCalendarGroup
  GetNavFolders oPeopleNavGroup
End Sub

Private Sub GetNavFolders(ByVal obj As Outlook.NavigationGroup)
  Set oNavFolders = obj.NavigationFolders
  Dim oNavFolder As Outlook.NavigationFolder
  For Each oNavFolder In oNavFolders
    Debug.Print oNavFolder.DisplayName & "==>" & oNavFolder.Folder ' <-- this errors
  Next
End Sub