문제

설치된 사무실 버전에 따라 Office 2003 또는 Office 2007 COM 개체를 참조 해야하는 Windows Form Application (C# 또는 VB.NET)을 작성하고 있습니다. 이 시나리오를 처리하고 런타임에서 올바른 COM 객체를 참조하는 가장 좋은 방법은 무엇입니까?

도움이 되었습니까?

해결책

Office 2007 객체 모델의 새로 추가 된 객체 및 메소드를 사용하지 않는 한 Office 2003 PIAS를 참조하는 것이 좋습니다. PIAS의 올바른 버전이 대상 시스템에 배포되어 있는지 확인하십시오.

이 문제에 대한 또 다른 방법은 후기 PIA에 대한 의존성을 제거하는 것입니다. 사무실에서의 후진 호환성이 높기 때문에 Add-In이 Office 2003 (Office 2003 PIAS 포함)에서 작동하면 Office 2007 (Office 2007 PIAS와 함께)에서도 작동한다고 안전하게 가정 할 수 있습니다.

(에서 PIA가없는 여러 사무실 버전의 추가 인 Andrew Whitechapel)

그렇지 않으면 Andrew Whitechapel의 다음 블로그 기사를 추천합니다. 여러 버전의 사무실에 대한 추가 기능을 구축 할 수 있습니까? (이것이 Microsoft가 공식적으로 지원하지 않는다는 큰 경고를 참조하십시오).

PIA가 필요하지 않은 또 다른 옵션 (이것은 배포가 훨씬 쉬워집니다)은 사용하는 것입니다. comimport 늦은 바인딩과 함께. 그러나 이것은 Interop 어셈블리를 사용하는 것보다 느리지 만 자동화 코드가 빠른 경로에 있지 않으면 좋은 솔루션 일 수 있습니다. 동일한 블로그 게시물에서이를 구현하는 방법을 찾을 수 있습니다. PIA가없는 여러 사무실 버전의 추가 인

다른 팁

사무실의 기본 인터 로프 어셈블리가 이것에 도움이되지 않습니까? 나는 그것들을 본격적으로 사용할 필요가 없어서 확실하지 않지만, 나는 그들이 그렇게 생각합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top