Office 솔루션 개발 개요

Microsoft Office를 솔루션의 프런트 엔드로 사용하면 친숙한 Microsoft Office 사용자 인터페이스와 Word의 워드 프로세싱 기능, Excel의 데이터 분석 기능 및 Outlook의 전자 메일 관리 기능 같은 도구를 활용할 수 있습니다. Visual Studio에서 솔루션을 개발하여 Office 응용 프로그램을 사용자 지정하고 비즈니스 프로세스에 필요한 특정 기능을 추가할 수 있습니다. 예를 들어 Word를 계약 생성기로 사용하여 편집 가능하거나 편집 불가능하게 만들 수 있는 기존 부분으로 계약을 구성할 수 있습니다. Excel을 사용하여 다양한 프로젝트에 맞게 사용자 지정된 자동 예산 워크시트를 만들 수도 있습니다. Office 솔루션은 오프라인에서도 사용할 수 있으므로 복잡한 솔루션을 웹 기반 아키텍처를 사용할 때보다 효과적으로 만들 수 있습니다.

이 항목에서는 Visual Studio 2010의 Office 개발자 도구를 사용하여 만들 수 있는 Office 솔루션 형식에 대해 간략하게 설명합니다. Office를 사용한 개발 방법에 대한 일반적인 내용은 Office 개발자 센터를 참조하십시오.

Office 프로젝트 형식 선택

Visual Studio에서는 Office 개발을 위한 다음 형식의 프로젝트 템플릿을 제공합니다.

  • 문서 수준 사용자 지정. 이 형식의 솔루션은 특정 문서와 연결됩니다.

  • 응용 프로그램 수준 추가 기능. 이 형식의 솔루션은 응용 프로그램 자체와 연결됩니다.

솔루션에 가장 적합한 프로젝트 형식을 결정하려면 특정 문서가 열려 있을 때만 코드를 실행해야 하는지 또는 응용 프로그램이 실행 중일 때 항상 코드를 사용할 수 있어야 하는지를 고려해야 합니다. 프로젝트 템플릿에 대한 자세한 내용은 Office 프로젝트 템플릿 개요를 참조하십시오.

만들 수 있는 프로젝트 형식은 개발 컴퓨터에 설치한 Office 응용 프로그램에 따라 달라집니다. 자세한 내용은 Office 응용 프로그램 및 프로젝트 형식에 따라 사용 가능한 기능을 참조하십시오.

문서 수준 사용자 지정

문서 수준 사용자 지정은 Microsoft Office Word 또는 Microsoft Office Excel의 단일 문서, 통합 문서 또는 템플릿에 연결된 어셈블리로 구성됩니다. 어셈블리는 연결된 문서가 열릴 때 로드됩니다. 작성된 사용자 지정의 기능은 연결된 문서가 열려 있을 때만 사용 가능합니다. 사용자 지정에서는 문서가 열려 있을 때 새 메뉴 항목이나 리본 메뉴 탭을 표시하는 등의 응용 프로그램 수준 변경 작업을 수행할 수 없습니다.

Visual Studio에는 문서 수준 사용자 지정을 만드는 데 유용한 도구가 포함되어 있습니다. 사용자 지정하는 문서는 Visual Studio의 디자인 화면으로 호스팅됩니다. 디자인 화면에서는 컨트롤을 문서로 끌어 놓아 문서를 디자인할 수 있습니다. 그 밖에도 Windows Forms 컨트롤, 끌어서 놓기 데이터 바인딩, 통합 디버거 등의 많은 Visual Studio 기능을 문서 수준 프로젝트에서 사용할 수 있습니다.

사용자 지정에 대한 자세한 내용은 다음 항목을 참조하십시오.

응용 프로그램 수준 추가 기능

응용 프로그램 수준 추가 기능은 Microsoft Office 응용 프로그램에 연결된 어셈블리로 구성됩니다. 일반적으로 추가 기능은 연결된 응용 프로그램이 시작될 때 실행되지만, 사용자가 응용 프로그램을 실행한 후 추가 기능을 로드할 수도 있습니다. 작성된 추가 기능의 기능은 열려 있는 문서에 관계없이 응용 프로그램 자체에서 사용 가능합니다.

Visual Studio에는 추가 기능을 만드는 데 유용한 도구가 포함되어 있습니다. 추가 기능 프로젝트에는 추가 기능을 나타내는 자동으로 생성된 클래스가 들어 있습니다. 이 클래스에서는 호스트 응용 프로그램의 개체 모델에 액세스하고 추가 기능이 로드되고 종료될 때 코드를 실행하는 데 사용할 수 있는 속성 및 이벤트를 제공합니다. 그 밖에도 Windows Forms, 통합 디버거 등의 많은 Visual Studio 기능을 응용 프로그램 수준 프로젝트에서 사용할 수 있습니다.

추가 기능에 대한 자세한 내용은 다음 항목을 참조하십시오.

주 interop 어셈블리를 사용하여 Office 응용 프로그램 자동화

Office 응용 프로그램의 개체 모델에 액세스하는 코드를 작성하여 솔루션에 Office 응용 프로그램의 기능을 프로그래밍 방식으로 통합할 수 있습니다. 개체 모델은 여러 가지 속성과 메서드를 통해 기능을 노출하는 클래스의 배열입니다. 각 Office 응용 프로그램의 개체 모델은 서로 다릅니다.

Visual Studio의 Office 개발 도구를 사용하여 만든 솔루션에서 Office 응용 프로그램의 개체 모델을 사용하려면 응용 프로그램의 PIA(주 interop 어셈블리)를 사용해야 합니다. PIA를 사용하면 솔루션의 관리 코드가 Office 응용 프로그램의 COM 기반 개체 모델과 상호 작용할 수 있습니다.

대부분의 개발 작업을 수행하려면 개발 컴퓨터의 전역 어셈블리 캐시에 Office PIA가 설치 및 등록되어 있어야 합니다. 자세한 내용은 Office 솔루션을 개발할 수 있도록 컴퓨터 구성을 참조하십시오.

.NET Framework 3.5를 대상으로 하는 Office 솔루션을 실행하려면 최종 사용자 컴퓨터에도 PIA가 설치되어 있어야 합니다. 그러나 .NET Framework 4를 대상으로 하는 Office 솔루션을 실행하려면 최종 사용자 컴퓨터에 Office PIA가 없어도 됩니다. 자세한 내용은 Office 솔루션 디자인 및 만들기를 참조하십시오.

Office 솔루션에서의 PIA 사용에 대한 자세한 내용은 다음 항목을 참조하십시오.

최종 사용자 컴퓨터에서 Microsoft Office 솔루션 실행

Office 솔루션을 만들 때는 개발 요구 사항이 개발 시 선택 사항에 주는 영향을 고려해야 합니다.

배포 옵션

ClickOnce 또는 Windows Installer를 사용하여 Visual Studio의 Office 개발 도구로 만든 솔루션을 배포할 수 있습니다. ClickOnce 배포를 사용하면 최소한의 사용자 상호 작용으로 설치 및 실행할 수 있는 자동 업데이트 솔루션을 만들 수 있습니다. Windows Installer 파일(.msi)은 최종 사용자 컴퓨터에 쉽게 배포할 수 있으며 SMS(Systems Management Server)를 사용하여 배포할 수도 있습니다. Office 솔루션을 배포하는 방법에 대한 자세한 내용은 Office 솔루션 배포를 참조하십시오.

필수 구성 요소 설치

Visual Studio에서 Office 개발 도구를 사용하여 만든 솔루션을 최종 사용자가 실행하려면 해당 컴퓨터에 특정 필수 구성 요소가 설치되어 있어야 합니다. ClickOnce를 사용하거나 Windows Installer 파일을 만들어 솔루션을 배포하는 경우 이러한 필수 구성 요소는 솔루션과 함께 설치될 수 있습니다. 자세한 내용은 Office 솔루션 배포 필수 구성 요소방법: 최종 사용자 컴퓨터에 Office 솔루션 실행을 위한 필수 구성 요소 설치를 참조하십시오.

보안

Office 솔루션의 보안은 Microsoft Visual Studio Tools for Office Runtime에서 솔루션을 설치하고 로드할 때 수행하는 일련의 검사를 통해 강화됩니다. 이러한 검사에는 배포 매니페스트의 위치를 신뢰할 수 있는지 여부 또는 배포 매니페스트를 서명하는 데 사용한 인증서를 신뢰할 수 있는지 여부를 확인하는 작업이 포함됩니다. 자세한 내용은 Office 솔루션 보안을 참조하십시오.

참고 항목

개념

문서 수준 사용자 지정 아키텍처

응용 프로그램 수준 추가 기능 아키텍처

Excel용 문서 수준 사용자 지정 프로그래밍 시작

Word용 문서 수준 사용자 지정 프로그래밍 시작

응용 프로그램 수준 추가 기능 프로그래밍 시작

기타 리소스

시작(Visual Studio에서의 Office 개발)