VSProject2 인터페이스
Visual Basic 또는 Visual C# 프로젝트에 관한 정보를 포함합니다. 프로젝트가 Visual Basic 또는 Visual C# 프로젝트이면 Object 개체에서 이 개체가 반환됩니다.
네임스페이스: VSLangProj80
어셈블리: VSLangProj80(VSLangProj80.dll)
구문
‘선언
<GuidAttribute("B1042570-25C6-424A-B58B-56FA83AA828A")> _
Public Interface VSProject2 _
Inherits VSProject
[GuidAttribute("B1042570-25C6-424A-B58B-56FA83AA828A")]
public interface VSProject2 : VSProject
[GuidAttribute(L"B1042570-25C6-424A-B58B-56FA83AA828A")]
public interface class VSProject2 : VSProject
[<GuidAttribute("B1042570-25C6-424A-B58B-56FA83AA828A")>]
type VSProject2 =
interface
interface VSProject
end
public interface VSProject2 extends VSProject
VSProject2 형식에서는 다음과 같은 멤버를 노출합니다.
속성
이름 | 설명 | |
---|---|---|
BuildManager | VSProject의 BuildManager 개체를 가져옵니다. | |
DTE | 최상위 확장성 개체를 가져옵니다. | |
Events | Imports, References 및 BuildManager 개체의 이벤트에 응답하는 데 사용할 수 있는 VSProjectEvents 개체를 가져옵니다. | |
Events2 | Imports, References, BuildManager 및 VSLangProjWebReferencesEvents 개체의 이벤트에 응답하는 데 사용할 수 있는 VSProjectEvents2 개체를 가져옵니다. | |
Imports | 프로젝트와 연결된 Imports 개체를 가져옵니다.C# 프로젝트의 경우 Imports 속성은 Nothing(nullNull 참조(Visual Basic의 경우 Nothing) 참조)으로 설정되어 있습니다. | |
Project | Visual Basic 또는 Visual C# 프로젝트에 연결된 제네릭 Project 개체를 가져옵니다. | |
PublishManager | 한 번 클릭으로 게시할 수 있는 PublishManager 개체를 가져옵니다. | |
References | 프로젝트의 References 컬렉션을 가져옵니다. | |
TemplatePath | 이 속성은 Microsoft Visual Studio 2005에서 사용되지 않습니다.대신 GetProjectItemTemplate를 사용하십시오. | |
WebReferencesFolder | 프로젝트의 Web References 폴더를 나타내는 ProjectItem 개체를 가져옵니다.폴더가 없으면 이 속성은 Nothing(nullNull 참조(Visual Basic의 경우 Nothing) 참조)을 반환합니다. | |
WorkOffline | 웹 프로젝트 작업을 온라인으로 수행할지 오프라인으로 수행할지 나타냅니다.오프라인으로 작업하면 프로젝트 파일의 오프라인 저장 위치에서 개발 작업이 계속 수행되므로 서버의 프로젝트 파일은 변경되지 않습니다. |
위쪽
메서드
이름 | 설명 | |
---|---|---|
AddWebReference | 프로젝트에 웹 서비스에 대한 참조를 추가합니다.프로젝트의 Web References 폴더에 새 웹 서비스 참조의 하위 폴더가 추가됩니다.이 폴더에는 웹 서비스와 관련된 여러 프로젝트 항목이 포함됩니다.이 메서드는 새 웹 서비스 폴더와 관련된 ProjectItem 개체를 반환합니다. | |
CopyProject | 웹 프로젝트의 일부 또는 전체를 새 위치로 복사합니다. | |
CreateWebReferencesFolder | 프로젝트의 Web References 폴더를 만듭니다. | |
Exec | 인프라입니다. Microsoft 내부용입니다. | |
GenerateKeyPairFiles | 어셈블리의 강력한 이름을 만드는 데 사용되는 공개 키/개인 키 파일을 생성합니다. | |
GetUniqueFilename | 프로젝트 내에서 고유한 파일 이름을 생성합니다. 새 프로젝트 항목 이름을 지정 하는 데 사용 됩니다. | |
Refresh | 솔루션 탐색기 에서 프로젝트 모양을 새로 고치고 참조를 새로 고칩니다. |
위쪽
설명
Project는 모든 언어의 프로젝트에 대한 정보를 포함할 수 있는 핵심 확장성 개체입니다. Project 개체의 Object 속성은 사용된 프로젝트 언어에 따라 형식이 달라지는 개체를 반환합니다. Visual Basic 및 Visual C#의 경우 이러한 개체는 VSProject2 개체입니다.
Object 속성은 Object 데이터 형식을 반환합니다. Object 속성에서 반환되는 데이터 개체는 명시적으로 VSProject2로 변환될 수 있습니다. 아래 예제에서는 CType 함수를 사용하여 변환하는 방법을 보여 줍니다. PrjKind는 변환하기 전에 프로젝트의 형식을 테스트하는 데 사용됩니다.
예제
이 예제를 추가 기능으로 실행하려면 방법: 자동화 개체 모델 코드의 예제 컴파일 및 실행을 참조하십시오.
Visual Basic 또는 Visual C# 프로젝트가 스마트 장치 프로젝트인지 확인하려면 prjKindSDEVBProject 및 prjKindSDECSharpProject를 사용합니다.
[Visual Basic]
Imports VSLangProj
Imports VSLangProj2
Imports VSLangProj80
Public Sub OnConnection(ByVal application As Object,_
ByVal connectMode As ext_ConnectMode, ByVal addInInst _
As Object, ByRef custom As Array) Implements _
IDTExtensibility2.OnConnection
applicationObject = CType(application, DTE2)
addInInstance = CType(addInInst, AddIn)
VSProject2Example(applicationObject)
End Sub
Sub VSProject2Example(ByVal dte As DTE2)
Dim aProject As Project
Dim aVSProject2 As VSProject2
aProject = applicationObject.Solution.Projects.Item(1)
MsgBox(aProject.Kind & aProject.Name)
If (aProject.Kind = PrjKind.prjKindVBProject) Or_
(aProject.Kind = PrjKind.prjKindCSharpProject) Then
aVSProject2 = CType(applicationObject.Solution.Projects.Item(1).Object, _
VSProject2)
MsgBox(aVSProject2.Project.FullName)
Else
MsgBox("The first project is not a Visual Basic or C# _
project.")
End If
End Sub
[C#]
// To use Messabox.Show, a reference to Windows.Forms is required.
using System.Windows.Forms;
using VSLangProj;
using VSLangProj2;
using VSLangProj80;
public void OnConnection(object application, ext_ConnectMode
connectMode, object addInInst, ref Array custom)
{
applicationObject = (DTE2)application;
addInInstance = (AddIn)addInInst;
VSProject2Example((DTE2)applicationObject);
}
public void VSProject2Example(DTE2 dte)
{
Project aProject = null;
VSProject aVSProject2 = null;
aProject = applicationObject.Solution.Projects.Item( 1 );
MessageBox.Show( aProject.Kind + aProject.Name);
if ( ( aProject.Kind == PrjKind.prjKindVBProject ) |
( aProject.Kind == PrjKind.prjKindCSharpProject ) )
{
aVSProject2 = ( ( VSProject )
(applicationObject.Solution.Projects.Item( 1 ).Object ) );
MessageBox.Show( aVSProject2.Project.FullName);
}
else
{
MessageBox.Show( "The first project is not a Visual Basic or C# project.");
}
}