VSProject2 Arabirim
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Visual Basic veya Visual C# projesine özgü bilgileri içerir. ObjectNesne, proje bir Visual Basic veya Visual C# projesi olduğunda onu döndürür.
public interface class VSProject2 : VSLangProj::VSProject
public interface class VSProject2 : VSLangProj::VSProject
__interface VSProject2 : VSLangProj::VSProject
[System.Runtime.InteropServices.Guid("B1042570-25C6-424A-B58B-56FA83AA828A")]
[System.Runtime.InteropServices.TypeLibType(4160)]
public interface VSProject2 : VSLangProj.VSProject
[<System.Runtime.InteropServices.Guid("B1042570-25C6-424A-B58B-56FA83AA828A")>]
[<System.Runtime.InteropServices.TypeLibType(4160)>]
type VSProject2 = interface
interface VSProject
Public Interface VSProject2
Implements VSProject
- Türetilmiş
- Öznitelikler
- Uygulamalar
Örnekler
Bu örneği bir eklenti olarak çalıştırmak için bkz. nasıl yapılır: derleme ve Otomasyon nesne modeli kodu örnekleri çalıştırma.
Bir Visual Basic veya Visual C# projenin akıllı cihaz projesi olup olmadığını anlamak için prjKindSDEVBProject ve kullanın 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
Þ
// 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.");
}
}
Açıklamalar
Project , herhangi bir dilin projeleri hakkında bilgi içerebilen bir temel genişletilebilirlik nesnesidir. ObjectNesnesinin özelliği, Project türü kullanılan proje diline bağlı olan bir nesne döndürür. Visual BasicVe durumunda Visual C# , bu nesne bir VSProject2 nesnedir.
ObjectÖzelliği bir Object veri türü döndürür. Özelliği tarafından döndürülen veri nesnesi, Object açıkça öğesine dönüştürülebilir VSProject2 . Aşağıdaki örnekte, işlevi kullanılarak bu dönüştürme gösterilmektedir CType . PrjKindDönüştürmeden önce projenin türünü test etmek için kullanılır.
Özellikler
| BuildManager |
Öğesinin BuildManager nesnesini alır VSProject . |
| DTE |
Üst düzey genişletilebilirlik nesnesini alır. |
| Events |
VSProjectEvents Imports , Ve nesnelerinin olaylarına yanıt vermenize olanak tanıyan bir nesne alır References BuildManager . |
| Events2 |
,, VSProjectEvents2 Imports References BuildManager Ve nesnelerinin olaylarına yanıt vermenize olanak tanıyan bir nesne alır VSLangProjWebReferencesEvents . |
| Imports |
ImportsProjeyle ilişkili nesneyi alır. C# projeleri için Imports özelliği Nothing (null başvuru) olarak ayarlanır. |
| Project |
ProjectVisual Basic veya Visual C# projesiyle ilişkili genel nesneyi alır. |
| PublishManager |
Yayımlamaya bir PublishManager kez tıklayarak bir nesneyi alır. |
| References |
ReferencesProjenin koleksiyonunu alır. |
| TemplatePath |
Bu özellik Microsoft Visual Studio 2005 ' de kullanımdan kaldırılmıştır. Bunun yerine GetProjectItemTemplate(String, String) kullanın. |
| WebReferencesFolder |
ProjectItemProjenin Web başvuruları klasörünü temsil eden nesneyi alır. Klasör yoksa, bu özellik Nothing (null başvuru) döndürür. |
| WorkOffline |
Bir Web projesinin çevrimiçi veya çevrimdışı çalışıp çalışmadığını belirtir. Çevrimdışı çalışırken geliştirme, proje dosyalarının çevrimdışı bir deposunda devam eder, böylece sunucudaki proje dosyaları değiştirilmez. |
Yöntemler
| AddWebReference(String) |
Projeye bir Web hizmetine bir başvuru ekler. Yeni bir Web hizmeti başvuru alt klasörü, projenin Web başvuruları klasörüne eklenir. Bu yeni klasör, Web hizmetiyle ilgili birçok başka proje öğesi içerir. Yöntemi, ProjectItem Yeni Web hizmeti klasörüyle ilişkili nesneyi döndürür. |
| CopyProject(String, String, prjCopyProjectOption, String, String) |
Bir Web projesinin bazılarını veya tümünü yeni bir konuma kopyalar. |
| CreateWebReferencesFolder() |
Proje için Web başvuruları klasörünü oluşturur. |
| Exec(prjExecCommand, Int32, Object, Object) |
Yalnızca Microsoft Dahili Kullanımı İçindir. |
| GenerateKeyPairFiles(String, String) |
Derleme için tanımlayıcı bir ad oluşturmak üzere kullanılan bir ortak/özel anahtar dosyası oluşturur. |
| GetUniqueFilename(Object, String, String) |
Proje içinde benzersiz bir dosya adı oluşturur. Yeni proje öğelerini adlandırmak için kullanılır. |
| Refresh() |
Çözüm Gezgini içindeki projenin görünümünü yeniler ve başvuruları yeniler. |