다음을 통해 공유


새 프로젝트를 생성 합니다: 내부에서 2 부

새 프로젝트를 생성: 내부에서 부품 하나 우리가 본 것은 어떻게 새 프로젝트 대화 상자가 채워집니다. 선택한 가정해 봅시다는 Visual C# Windows 응용 프로그램, 작성 한의 이름위치 텍스트 상자와 클릭 한 확인 합니다.

솔루션 파일을 생성합니다.

응용 프로그램 템플릿을 선택 하 게 Visual Studio 의 압축을 풀어야 해당.vstemplate 파일을 열 수 및 XML 명령 파일에서을 해석 하는 서식 파일을 시작 합니다. 이러한 명령은 기존 또는 새 솔루션에 프로젝트와 프로젝트 항목을 만듭니다.

템플릿 항목 템플릿의.vstemplate 파일을 포함 하는 동일한.zip 폴더에서 호출 하는 소스 파일의 압축을 풉니다. 서식 파일에 따라 사용자 지정을 새 프로젝트에 이러한 파일을 복사 합니다. 프로젝트 템플릿과 항목 템플릿에 대 한 개요를 참조 하십시오. Visual Studio Templates.

템플릿 매개 변수 대체

서식 파일 항목 템플릿을 새 프로젝트에 복사 하는 경우 모든 템플릿 매개 변수 파일을 사용자 지정 하는 문자열을 대체 합니다. 템플릿 매개 변수에 앞이 고 뒤에 달러 기호, 예를 들어 특수 토큰, $날짜입니다.

에 일반적인 프로젝트 항목 템플릿을 살펴보겠습니다. 압축을 풀고 프로그램 상자 Visual Studio 8\Common7\IDE\ProjectTemplates\CSharp\Windows\1033\WindowsApplication.zip 폴더에서 program.cs를 검사 합니다.

using System;
using System.Collections.Generic;
using System.Windows.Forms;

namespace $safeprojectname$
{
    static class Program
    {
        // source code deleted here for brevity
    }
}

단순 라는 새 Windows 응용 프로그램 프로젝트를 만드는 경우 템플릿을 대체는 $safeprojectname$ 매개 변수는 프로젝트의 이름으로 합니다.

using System;
using System.Collections.Generic;
using System.Windows.Forms;

namespace Simple
{
    static class Program
    {
        // source code deleted here for brevity
    }
}

템플릿 매개 변수의 전체 목록을 보려면 템플릿 매개 변수를 참조하십시오.

모양 내부에 있습니다.VSTemplate 파일

이 형식 기본적인.vstemplate 파일에 없습니다.

<VSTemplate Version="2.0.0"     xmlns="https://schemas.microsoft.com/developer/vstemplate/2005"     Type="Project">
    <TemplateData>
    </TemplateData>
    <TemplateContent>
    </TemplateContent>
</VSTemplate>

우리는 <TemplateData> 조회 섹션에 있는 새 프로젝트를 생성: 내부에서 부품 하나. 이 섹션에는 태그의 모양을 제어 하는 것은 새 프로젝트 대화 상자.

<TemplateContent> 태그 구역 컨트롤 새 프로젝트 및 프로젝트 항목을 생성 합니다. 다음은 <TemplateContent> \Program Files\Microsoft Visual Studio 8\Common7\IDE\ProjectTemplates\CSharp\Windows\1033\WindowsApplication.zip 폴더에서 cswindowsapplication.vstemplate 파일의 섹션입니다.

<TemplateContent>
  <Project File="WindowsApplication.csproj" ReplaceParameters="true">
    <ProjectItem ReplaceParameters="true"
      TargetFileName="Properties\AssemblyInfo.cs">
      AssemblyInfo.cs
    </ProjectItem>
    <ProjectItem TargetFileName="Properties\Resources.resx">
      Resources.resx
    </ProjectItem>
    <ProjectItem ReplaceParameters="true"       TargetFileName="Properties\Resources.Designer.cs">
      Resources.Designer.cs
    </ProjectItem>
    <ProjectItem TargetFileName="Properties\Settings.settings">
      Settings.settings
    </ProjectItem>
    <ProjectItem ReplaceParameters="true"       TargetFileName="Properties\Settings.Designer.cs">
      Settings.Designer.cs
    </ProjectItem>
    <ProjectItem ReplaceParameters="true" OpenInEditor="true">
      Form1.cs
    </ProjectItem>
    <ProjectItem ReplaceParameters="true">
      Form1.Designer.cs
    </ProjectItem>
    <ProjectItem ReplaceParameters="true">
      Program.cs
    </ProjectItem>
  </Project>
</TemplateContent>

<Project> 태그를 프로젝트와 <ProjectItem>의 생성 제어 태그 생성 하는 프로젝트 항목을 제어합니다. ReplaceParameters 매개 변수가 true 인 경우 템플릿이 프로젝트 파일 또는 항목에 모든 템플릿 매개 변수를 사용자 지정 합니다. 사용자이 경우 모든 프로젝트 항목을 제외한 Settings.settings 지정 됩니다.

TargetFileName 매개 변수 이름 및 생성 된 프로젝트 파일 또는 항목의 상대 경로 지정합니다. 이 프로젝트에 대 한 폴더 구조를 만들 수 있습니다. 이 인수를 지정 하지 않으면 프로젝트 항목은 프로젝트 항목 템플릿의 이름이 같은 해야 합니다.

결과 Windows 응용 프로그램 폴더 구조는 다음과 같습니다.

SimpleSolution

첫 번째 및 유일한 <Project> 서식 파일에서 태그는 다음과 같습니다.

<Project File="WindowsApplication.csproj" ReplaceParameters="true">

이 서식 파일 항목 windowsapplication.csproj를 사용자 지정 하 고 복사 Simple.csproj 프로젝트 파일을 만들려면 새 프로젝트 서식 파일에 지시 합니다.

디자이너 및 참조

솔루션 탐색기에서 속성 폴더 존재 하 고 예상 되는 파일이 들어 볼 수 있습니다. 그러나 Resources.Designer.cs Resources.resx 하 고 Form1.cs Form1.Designer.cs 같은 종속성 파일 참조 하는 프로젝트에 대 한 내용 및 디자이너? 생성 될 때 이러한 Simple.csproj 파일에서 설정 됩니다.

다음은 <ItemGroup> simple.csproj에서 프로젝트 참조를 만듭니다.

<ItemGroup>
    <Reference Include="System" />
    <Reference Include="System.Data" />
    <Reference Include="System.Deployment" />
    <Reference Include="System.Drawing" />
    <Reference Include="System.Windows.Forms" />
    <Reference Include="System.Xml" />
</ItemGroup>

이 지 솔루션 탐색기에 표시 된 여섯 개의 프로젝트 참조를 볼 수 있습니다. 여기에서 다른 <ItemGroup> 섹션이입니다. 이해를 돕기 위해 여러 코드 줄을 삭제 했습니다. 이 단원에서는 Settings.Designer.cs settings.settings에 종속 됩니다.

<ItemGroup>
    <Compile Include="Properties\Settings.Designer.cs">
        <DependentUpon>Settings.settings</DependentUpon>
    </Compile>
</ItemGroup>

참고 항목

개념

새 프로젝트를 생성: 내부에서 부품 하나

기타 리소스

MSBuild