Partager via


VSProject2, interface

Contient des informations spécifiques à un projet Visual Basic ou Visual C#. L'objet Object retourne cet élément lorsque le projet est de type Visual Basic ou Visual C#.

Espace de noms :  VSLangProj80
Assembly :  VSLangProj80 (dans VSLangProj80.dll)

Syntaxe

'Déclaration
<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

Le type VSProject2 expose les membres suivants.

Propriétés

  Nom Description
Propriété publique BuildManager (Hérité de VSProject.)
Propriété publique BuildManager Obtient l'objet BuildManager de VSProject.
Propriété publique DTE (Hérité de VSProject.)
Propriété publique DTE Obtient l'objet d'extensibilité de niveau supérieur.
Propriété publique Events (Hérité de VSProject.)
Propriété publique Events Obtient un objet VSProjectEvents qui vous permet de répondre aux événements des objets Imports, References et BuildManager.
Propriété publique Events2 Obtient un objet VSProjectEvents2 qui vous permet de répondre aux événements des objets Imports, References, BuildManager et VSLangProjWebReferencesEvents.
Propriété publique Imports (Hérité de VSProject.)
Propriété publique Imports Obtient l'objet Imports associé au projet.Pour les projets C#, la propriété Imports a la valeur Nothing (une référence nullune référence null (Nothing en Visual Basic)).
Propriété publique Project (Hérité de VSProject.)
Propriété publique Project Obtient l'objet Project générique associé au projet Visual Basic ou Visual C#.
Propriété publique PublishManager Obtient un objet PublishManager pour autoriser la publication ClickOnce.
Propriété publique References (Hérité de VSProject.)
Propriété publique References Obtient la collection References du projet.
Propriété publique TemplatePath (Hérité de VSProject.)
Propriété publique TemplatePath Cette propriété est déconseillée dans Microsoft Visual Studio 2005.Utilisez plutôt GetProjectItemTemplate.
Propriété publique WebReferencesFolder (Hérité de VSProject.)
Propriété publique WebReferencesFolder Obtient l'objet ProjectItem représentant le dossier Web References du projet.Si le dossier n'existe pas, cette propriété retourne Nothing (une référence nullune référence null (Nothing en Visual Basic) ).
Propriété publique WorkOffline (Hérité de VSProject.)
Propriété publique WorkOffline Détermine si un projet Web fonctionne en ligne ou hors connexion.Lorsque le projet fonctionne hors connexion, le développement se poursuit dans un magasin hors connexion de fichiers projet ; les fichiers projet du serveur ne sont donc pas modifiés.

Début

Méthodes

  Nom Description
Méthode publique AddWebReference(String) (Hérité de VSProject.)
Méthode publique AddWebReference(String) Ajoute au projet une référence à un service Web.Un nouveau sous-dossier de référence à un service Web est ajouté au dossier Web References du projet.Ce nouveau dossier contient plusieurs autres éléments de projet relatifs au service Web.La méthode retourne l'objet ProjectItem associé au nouveau dossier de service Web.
Méthode publique CopyProject(String, String, prjCopyProjectOption, String, String) (Hérité de VSProject.)
Méthode publique CopyProject(String, String, prjCopyProjectOption, String, String) Copie entièrement ou partiellement un projet Web à un nouvel emplacement.
Méthode publique CreateWebReferencesFolder() (Hérité de VSProject.)
Méthode publique CreateWebReferencesFolder() Crée le dossier Web References du projet.
Méthode publique Exec(prjExecCommand, Int32, Object, Object%) (Hérité de VSProject.)
Méthode publique Exec(prjExecCommand, Int32, Object, Object%) Infrastructure. Réservé à un usage interne Microsoft.
Méthode publique GenerateKeyPairFiles(String, String) (Hérité de VSProject.)
Méthode publique GenerateKeyPairFiles(String, String) Génère un fichier de clés publique/privée afin de former un nom fort pour l'assembly.
Méthode publique GetUniqueFilename(Object, String, String) (Hérité de VSProject.)
Méthode publique GetUniqueFilename(Object, String, String) Génère un nom de fichier unique dans le projetet est utilisé pour nommer les nouveaux éléments de projet.
Méthode publique Refresh() (Hérité de VSProject.)
Méthode publique Refresh() Actualise l'apparence du projet dans l'Explorateur de solutions et actualise les références.

Début

Notes

Project est un objet d'extensibilité principale pouvant contenir des informations sur des projets, quel que soit leur langage. La propriété Object de l'objet Project retourne un objet dont le type est déterminé par le langage du projet. Dans le cas de Visual Basic et Visual C#, cet objet est un objet VSProject2.

La propriété Object retourne un type de données Object. L'objet de données retourné par la propriété Object peut être ensuite converti explicitement en VSProject2. L'exemple ci-après montre comment cette conversion est effectuée à l'aide de la fonction CType. PrjKind est utilisé pour tester le type du projet avant la conversion.

Exemples

Pour exécuter cet exemple comme un complément, consultez Comment : compiler et exécuter les exemples de code du modèle objet Automation.

Pour déterminer si un projet Visual Basic ou Visual C# est un projet Smart Device, utilisez prjKindSDEVBProject et 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."); 
    } 
}

Voir aussi

Référence

VSLangProj80, espace de noms

VSProject