다음을 통해 공유


연습: 추가 기능 프로젝트 디버깅

이 연습에서는 간단한 Visual Studio 추가 기능 프로젝트를 만들고 중단점을 사용하여 프로젝트를 디버깅하는 방법을 보여 줍니다. 자세한 내용은 중단점 및 추적점를 참조하십시오.

추가 기능은 Visual Studio의 자동화 개체 모델을 사용하여 IDE(통합 개발 환경)를 조작하거나 자동화하는 컴파일된 응용 프로그램입니다. 자세한 내용은 추가 기능 및 마법사 만들기를 참조하십시오.

참고

표시되는 대화 상자와 메뉴 명령은 활성 설정이나 버전에 따라 도움말에서 설명하는 것과 다를 수 있습니다. 이러한 절차는 일반 개발 설정을 사용하여 개발되었습니다. 설정을 변경하려면 도구 메뉴에서 설정 가져오기 및 내보내기를 선택합니다. 자세한 내용은 설정에 대한 작업을 참조하십시오.

간단한 Visual Studio 추가 기능 프로젝트를 만들려면

  1. 파일 메뉴에서 새로 만들기를 가리킨 다음 프로젝트를 클릭합니다.

    New Project Dialog Box가 나타납니다.

  2. 프로젝트 형식 창에서 기타 프로젝트 형식을 확장한 다음 확장성을 선택합니다.

  3. 템플릿 창에서 Visual Studio 추가 기능을 선택합니다.

  4. 이름 필드에 추가 기능 프로젝트의 이름으로 SimpleAddIn을 입력합니다. 확인을 클릭합니다.

    Welcome to the Add-In Wizard, Visual Studio Add-In Wizard가 시작됩니다.

  5. 추가 기능 마법사입니다. 페이지에서 다음을 클릭합니다.

  6. 프로그래밍 언어 선택 페이지에서 Visual C#을 사용하여 추가 기능 만들기를 클릭하고 다음을 클릭합니다.

  7. 응용 프로그램 호스트 선택 페이지에서 기본 옵션을 선택한 상태로 두고 다음을 클릭합니다.

  8. 이름 및 설명 입력 페이지에 추가 기능의 이름으로 "Simple Add-in"을 입력하고 "간단한 추가 기능을 디버깅하는 방법에 대해 설명하는 데 사용합니다."를 추가 기능에 대한 설명으로 입력합니다. 다음을 클릭합니다.

  9. 추가 기능 옵션 선택 페이지에서 예, '도구' 메뉴 항목을 만듭니다. 옵션을 선택하고 나머지 기본값을 적용합니다. 다음을 클릭합니다.

  10. '도움말' 정보 선택 페이지에서 예, 추가 기능에 '정보' 상자를 제공합니다. 옵션을 선택하고 다음을 클릭합니다.

  11. 요약 페이지에서 마침을 클릭합니다.

    추가 기능 마법사에서 새 추가 기능 프로젝트를 만들고 Connect.cs 파일에 포커스가 있는 상태로 IDE가 열립니다. 이는 추가 기능의 코드가 포함된 기본 클래스입니다.

  12. 솔루션 탐색기에서 참조 노드를 마우스 오른쪽 단추로 클릭하고 참조 추가를 선택하여 어셈블리에 참조를 추가합니다.

    이렇게 하면 System.Windows.Forms 네임스페이스에서 형식 사용이 허용됩니다.

    Add Reference Dialog Box가 나타납니다.

  13. .NET 탭에서 System.Windows.Forms.dll 구성 요소를 두 번 클릭합니다.

    솔루션 탐색기에서 System.Windows.Forms 네임스페이스에 대한 참조가 참조 노드에 표시됩니다.

    이 네임스페이스에는 메시지 상자를 표시하는 데 필요한 코드가 포함되어 있으며, 다음 코드 예제에서는 이 네임스페이스를 사용합니다.

  14. MessageBox 개체를 보다 쉽게 사용할 수 있도록 Connect.cs에서 SimpleAddIn 범위의 맨 위쪽에 다음 문을 추가합니다.

    using System.Windows.Forms;
    
  15. Connect.cs의Exec 메서드에 MessageBox.Show("Debugging a Simple Add-in");를 추가하여 추가 기능에 MessageBox 개체를 추가합니다.

    public void Exec(string commandName,
       vsCommandExecOption executeOption,
       ref object varIn, ref object varOut, ref bool handled)
    {
       handled = false;
       if(executeOption ==
          vsCommandExecOption.vsCommandExecOptionDoDefault)
       {
          if(commandName == "MyAddin1.Connect.MyAddin1")
          {
             handled = true;
             MessageBox.Show("Debugging a Simple Add-in");
             return;
          }
       }
    }
    
  16. 모두 저장 단추를 클릭하여 작업 내용을 저장합니다.

Visual Studio 추가 기능 프로젝트를 디버깅하려면

  1. Connect.cs 파일에서 다음 문 왼쪽의 여백을 클릭합니다.

    MessageBox.Show("Debugging a Simple Add-in")
    

    빨간 점(중단점)이 나타나며 해당 줄의 텍스트가 빨간색으로 강조 표시됩니다.

  2. 디버그 메뉴에서 디버깅 시작을 클릭합니다.

    현재 Visual Studio 세션, 즉 디버거 세션이 포커스를 잃고 프로그램이 디버깅되며 Visual Studio의 다른 인스턴스에서 열립니다.

  3. 디버깅 중인 Visual Studio IDE에서 도구 메뉴를 클릭합니다.

    SimpleAddIn이 메뉴 항목 맨 위에 표시됩니다.

  4. SimpleAddIn 명령을 선택하여 추가 기능을 실행합니다.

    그러면 Visual Studio 디버거 세션에서 중단점을 설정한 줄로 이동하며, 이 줄은 노란색으로 강조 표시됩니다.

  5. 디버거 세션의 디버그 메뉴에서 한 단계씩 코드 실행을 선택합니다.

    디버깅되는 프로그램에 포커스가 다시 놓이고, 추가 기능이 실행되었음을 나타내는 메시지 상자가 열립니다.

  6. 확인을 클릭하여 메시지 상자를 닫습니다.

  7. 디버거 세션에서 디버그 메뉴의 계속을 선택합니다.

    디버깅되는 Visual Studio 세션에 포커스가 다시 놓입니다.

  8. 디버깅되는 Visual Studio 세션을 종료합니다.

  9. Connect.cs 파일에서 MessageBox 문 옆에 설정한 중단점을 클릭하여 소스 코드에서 제거합니다.

    코드에서 확인할 수 있는 것처럼 추가 기능을 디버깅하면 Visual Studio IDE의 다른 인스턴스가 열리고 실행 중인 추가 기능이 호스팅됩니다. 이 첫 번째 인스턴스에서 코드를 표시하므로 디버깅(예: 조사식 변수, 중단점 등 설정)할 수 있습니다. 디버깅을 마치면 IDE의 두 번째 인스턴스가 닫히고 첫 번째 인스턴스의 추가 기능 코드로 돌아갑니다.

참고 항목

기타 리소스

추가 기능 및 마법사 만들기

자동화 및 확장성 참조