Solution2-Schnittstelle
Stellt alle Projekte und projektmappenweiten Eigenschaften in der integrierten Entwicklungsumgebung (IDE) dar.
Namespace: EnvDTE80
Assembly: EnvDTE80 (in EnvDTE80.dll)
Syntax
'Declaration
<GuidAttribute("FA238614-FBB1-4314-A7F7-49AE8BB6C6BA")> _
Public Interface Solution2 _
Inherits _Solution
[GuidAttribute("FA238614-FBB1-4314-A7F7-49AE8BB6C6BA")]
public interface Solution2 : _Solution
[GuidAttribute(L"FA238614-FBB1-4314-A7F7-49AE8BB6C6BA")]
public interface class Solution2 : _Solution
[<GuidAttribute("FA238614-FBB1-4314-A7F7-49AE8BB6C6BA")>]
type Solution2 =
interface
interface _Solution
end
public interface Solution2 extends _Solution
Der Solution2-Typ macht die folgenden Member verfügbar.
Eigenschaften
Name | Beschreibung | |
---|---|---|
AddIns | (Von _Solution geerbt.) | |
AddIns | Ruft eine AddIns-Auflistung mit allen derzeit verfügbaren Add-Ins ab, die der Projektmappe zugeordnet sind. | |
Count | (Von _Solution geerbt.) | |
Count | Ruft einen Wert ab, der die Anzahl der in der Projektmappe enthaltenen Objekte angibt. | |
DTE | (Von _Solution geerbt.) | |
DTE | Ruft das Erweiterbarkeitsobjekt der obersten Ebene ab. | |
Extender[String] | (Von _Solution geerbt.) | |
Extender[String] | Ruft das angeforderte Extenderobjekt ab, falls es für dieses Objekt verfügbar ist. | |
ExtenderCATID | (Von _Solution geerbt.) | |
ExtenderCATID | Ruft die ID der Extenderkategorie (CATID) für das Objekt ab. | |
ExtenderNames | (Von _Solution geerbt.) | |
ExtenderNames | Ruft eine Liste der für das Objekt verfügbaren Extender ab. | |
FileName | (Von _Solution geerbt.) | |
FileName | Infrastruktur. Nur für die interne Verwendung durch Microsoft vorgesehen. | |
FullName | (Von _Solution geerbt.) | |
FullName | Ruft den vollständigen Pfad und Namen der Objektdatei ab. | |
Globals | (Von _Solution geerbt.) | |
Globals | Ruft das Globals-Objekt mit den Variablenwerten ab, die in der Projektmappendatei (.sln), in der Projektdatei oder in den Profildaten des Benutzers gespeichert werden können. | |
IsDirty | (Von _Solution geerbt.) | |
IsDirty | Infrastruktur. Nur für die interne Verwendung durch Microsoft vorgesehen. | |
IsOpen | (Von _Solution geerbt.) | |
IsOpen | Ruft einen Wert ab, der angibt, ob eine Projektmappe offen ist. | |
Parent | (Von _Solution geerbt.) | |
Parent | Ruft das unmittelbar übergeordnete Objekt eines Solution2-Objekts ab. | |
Projects | (Von _Solution geerbt.) | |
Projects | Ruft eine Auflistung aller Projekte ab, die sich derzeit in der Projektmappe befinden. | |
Properties | (Von _Solution geerbt.) | |
Properties | Ruft eine Auflistung aller Eigenschaften des Solution2-Objekts ab. | |
Saved | (Von _Solution geerbt.) | |
Saved | Ruft einen Wert ab, der angibt, ob eine Projektmappe seit dem letzten Speichern oder Öffnen nicht geändert wurde, oder legt diesen Wert fest. | |
SolutionBuild | (Von _Solution geerbt.) | |
SolutionBuild | Ruft das SolutionBuild-Objekt für die Projektmappe ab, das den Stamm des Buildautomatisierungsmodells auf Projektmappenebene darstellt. | |
TemplatePath[String] | (Von _Solution geerbt.) | |
TemplatePath[String] | Ersetzt durch GetProjectTemplate. |
Zum Seitenanfang
Methoden
Name | Beschreibung | |
---|---|---|
AddFromFile(String, Boolean) | (Von _Solution geerbt.) | |
AddFromFile(String, Boolean) | Fügt basierend auf einer bereits im System gespeicherten Projektdatei ein Projekt zur Projektmappe hinzu. | |
AddFromTemplate(String, String, String, Boolean) | (Von _Solution geerbt.) | |
AddFromTemplate(String, String, String, Boolean) | Kopiert eine vorhandene Projektdatei sowie alle darin enthaltenen Elemente oder Unterverzeichnisse in den angegebenen Pfad und fügt sie zur Projektmappe hinzu. | |
AddSolutionFolder | Fügt einen Projektmappenordner einer ProjectItems-Auflistung hinzu. | |
Close(Boolean) | (Von _Solution geerbt.) | |
Close(Boolean) | Schließt die aktuelle Projektmappe. | |
Create(String, String) | (Von _Solution geerbt.) | |
Create(String, String) | Erstellt in dem angegebenen Verzeichnis eine leere Projektmappe mit dem festgelegten Namen. | |
FindProjectItem(String) | (Von _Solution geerbt.) | |
FindProjectItem(String) | Findet ein Element in einem Projekt auf. | |
GetEnumerator() | (Von _Solution geerbt.) | |
GetEnumerator() | Gibt eine Enumeration für Elemente in einer Auflistung zurück. | |
GetProjectItemTemplate | Gibt einen Pfad zur angegebenen Projektelementvorlage zurück. | |
GetProjectTemplate | Gibt einen Pfad zur angegebenen Projektvorlage zurück. | |
Item(Object) | (Von _Solution geerbt.) | |
Item(Object) | Gibt einen indizierten Member einer Projects-Auflistung zurück. | |
Open(String) | (Von _Solution geerbt.) | |
Open(String) | Öffnet eine angegebene Projektmappe. | |
ProjectItemsTemplatePath(String) | (Von _Solution geerbt.) | |
ProjectItemsTemplatePath(String) | Ersetzt durch GetProjectItemTemplate. | |
Remove(Project) | (Von _Solution geerbt.) | |
Remove(Project) | Entfernt das angegebene Projekt aus der Projektmappe. | |
SaveAs(String) | (Von _Solution geerbt.) | |
SaveAs(String) | Speichert die Projektmappe. |
Zum Seitenanfang
Hinweise
Diese Schnittstelle enthält eine Auflistung aller Projekte in der aktuellen Instanz der IDE und aller projektmappenweiten Eigenschaften, z. B. Buildkonfigurationen.Es enthält unabhängig davon, ob es sich um ein umschlossenes Projekt, ein Unterprojekt oder ein Projekt auf oberster Ebene handelt, für jedes Projekt ein Projektelement.
Sie können die geöffnete Projektmappe mithilfe der DTE.Solution-Eigenschaft bestimmen.Verwenden Sie Solution.Item(EnvDTE.Constants.vsProjectKindMisc oder Solution.Item(EnvDTE.Constants.vsProjectKindSolutionItems, um auf virtuelle Projekte wie MiscFiles oder SolutionItems zu verweisen.
Beispiele
Informationen zum Ausführen des Add-In-Codes finden Sie unter Gewusst wie: Kompilieren und Ausführen der Codebeispiele für das Automatisierungsobjektmodell.
Im folgenden Code wird eine neue Konsolenanwendungsprojektmappe im angegebenen Pfad erstellt.
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)
SolutionExample(_applicationObject)
End Sub
Sub SolutionExample(ByVal dte As DTE2)
' This function creates a solution and adds a Visual Basic Console
' project to it.
Try
Dim soln As Solution2 = CType(DTE.Solution, Solution2)
Dim vbTemplatePath As String
' This path must exist on your computer.
' Replace <file path> below with an actual path.
Dim vbPrjPath As String = <file path>
MsgBox("starting")
' Get the project template path for a Visual Basic console application project.
vbTemplatePath = soln.GetProjectTemplate _
("ConsoleApplication.zip", "VisualBasic")
' Create a new Visual Baic Console project using the template obtained
' above.
soln.AddFromTemplate(vbTemplatePath, vbPrjPath, _
"New Visual Basic Console Project", False)
MsgBox("done")
Catch ex As System.Exception
MsgBox(ex.ToString)
End Try
End Sub
//you will need to add this reference to your project as well
using System.Windows.Forms;
public void OnConnection(object application,
Extensibility.ext_ConnectMode connectMode, object addInInst,
ref System.Array custom)
{
_applicationObject = (DTE2)application;
_addInInstance = (AddIn)addInInst;
// Pass the applicationObject member variable to the code example.
SolutionExample((DTE2)_applicationObject);
}
public void SolutionExample(DTE2 dte)
{
// This function creates a solution and adds a Visual C# Console
// project to it.
try{
Solution2 soln = (Solution2)_applicationObject.Solution;
String csTemplatePath;
// The file path must exist on your computer.
// Replace <file path> below with an actual path.
String csPrjPath = <file path>;
MessageBox.Show("Starting...");
csTemplatePath =
soln.GetProjectTemplate("ConsoleApplication.zip", "CSharp");
// Create a new C# Console project using the template obtained
// above.
soln.AddFromTemplate(csTemplatePath, csPrjPath,
"New CSharp Console Project", false);
MessageBox.Show("Done!");
}
catch(SystemException ex)
{
MessageBox.Show("ERROR: " + ex);
}
}