SolutionBuild2.StartupProjects, propriété
Obtient ou définit les noms de projets qui sont des points d'entrée pour l'application.
Espace de noms : EnvDTE80
Assembly : EnvDTE80 (dans EnvDTE80.dll)
Syntaxe
'Déclaration
Property StartupProjects As Object
Object StartupProjects { get; set; }
property Object^ StartupProjects {
Object^ get ();
void set (Object^ value);
}
abstract StartupProjects : Object with get, set
function get StartupProjects () : Object
function set StartupProjects (value : Object)
Valeur de propriété
Type : System.Object
Objet contenant les noms des projets qui sont les points d'entrée pour l'application.
Notes
StartupProjects contient une liste de chaînes de noms de projets qui « démarrent » lors de l'émission de la commande Run.Chaque projet et chaque langage définissent ce que signifie « démarrer » ainsi que ce qui se produit après ce démarrage.Par exemple, un projet Visual C++ démarre en exécutant la fonction main() et Visual Basic exécute Sub Main() ou un formulaire de démarrage.D'autres projets et langages utilisent une propriété du projet pour obtenir le nom d'une classe ou d'une fonction, tandis que d'autres utilisent une interface à implémenter, et ainsi de suite.
Exemples
Cet exemple détermine l'état de la génération pour chaque configuration de démarrage active.Ouvrez un projet dans l'IDE de Visual Studio avant d'exécuter ce complément.
Pour plus d'informations sur l'exécution de cet exemple comme complément, consultez Comment : compiler et exécuter les exemples de code du modèle objet Automation.
Imports EnvDTE
Imports EnvDTE80
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)
SolutionBuild2Example(_applicationObject)
End Sub
Sub SolutionBuild2Example(ByVal dte As DTE2)
' Open a solution in the Visual Studio IDE
' before running this example.
Try
Dim sb As SolutionBuild2
sb = CType(_applicationObject.Solution.SolutionBuild _
, SolutionBuild2)
Dim sc As SolutionConfiguration2
sc = CType(sb.ActiveConfiguration, SolutionConfiguration2)
Dim vsBldSt As vsBuildState
Dim msg As String = "Return relative path to startup _
projects: "
For Each s As String In CType(sb.StartupProjects, Array)
msg &= vbCr & " " & s
Next
msg &= vbCr & "SolutionConfiguration: " & sc.Name
vsBldSt = sb.BuildState
If (vsBldSt = vsBuildState.vsBuildStateDone) Then
msg &= vbCr & "A build has occurred."
ElseIf (vsBldSt = vsBuildState.vsBuildStateInProgress) Then
msg &= vbCr & "A build is in progress."
Else : msg &= vbCr & "A build has not occurred."
End If
MsgBox(msg)
Catch ex As System.Exception
MsgBox(ex.ToString)
End Try
End Sub
using EnvDTE;
using EnvDTE80;
using System.Windows.Forms;
public void OnConnection(object application,
ext_ConnectMode connectMode, object addInInst, ref Array custom)
{
_applicationObject = (DTE2)application;
_addInInstance = (AddIn)addInInst;
SolutionBuild2Example(_applicationObject);
}
public void SolutionBuild2Example(DTE2 dte)
{
try
{
SolutionBuild2 sb =
(SolutionBuild2)_applicationObject.Solution.SolutionBuild;
SolutionConfiguration2 sc =
(SolutionConfiguration2)sb.ActiveConfiguration;
vsBuildState vsBS;
string msg = "Return relative path to startup projects: ";
foreach (String s in (Array)sb.StartupProjects)
{
msg += "\n " + s;
}
msg += "\nSolutionConfiguration: " + sc.Name;
vsBS = sb.BuildState;
if (vsBS == vsBuildState.vsBuildStateDone)
msg += "\nA build has occurred.";
else if (vsBS == vsBuildState.vsBuildStateInProgress)
msg += "\nA build is in progress.";
else msg += "\nA build has not occurred.";
MessageBox.Show(msg);
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
}
Sécurité .NET Framework
- Confiance totale accordée à l'appelant immédiat. Ce membre ne peut pas être utilisé par du code d'un niveau de confiance partiel. Pour plus d'informations, consultez Utilisation de bibliothèques à partir de code d'un niveau de confiance partiel.