VCCodeModel-Schnittstelle
Ein Objekt, das Zugriff auf ein beliebiges enthaltenes Codeelement auf Projektebene bietet.
Namespace: Microsoft.VisualStudio.VCCodeModel
Assembly: Microsoft.VisualStudio.VCCodeModel (in Microsoft.VisualStudio.VCCodeModel.dll)
Syntax
'Declaration
<GuidAttribute("5A716328-5325-4A51-AEF4-EFBB8A10B89F")> _
Public Interface VCCodeModel _
Inherits CodeModel2
[GuidAttribute("5A716328-5325-4A51-AEF4-EFBB8A10B89F")]
public interface VCCodeModel : CodeModel2
[GuidAttribute(L"5A716328-5325-4A51-AEF4-EFBB8A10B89F")]
public interface class VCCodeModel : CodeModel2
[<GuidAttribute("5A716328-5325-4A51-AEF4-EFBB8A10B89F")>]
type VCCodeModel =
interface
interface CodeModel2
end
public interface VCCodeModel extends CodeModel2
Der VCCodeModel-Typ macht die folgenden Member verfügbar.
Eigenschaften
Name | Beschreibung | |
---|---|---|
Attributes | Ruft eine Auflistung aller Attribute für das Objekt ab. | |
Classes | Ruft eine Auflistung von Klassen für das Objekt ab. | |
CodeElements | Ruft eine Auflistung von Codeelementen ab. | |
Delegates | Ruft eine Auflistung von Delegaten für das Objekt ab. | |
DialogClasses | Ruft eine Auflistung von Dialogfeldklassen ab. | |
DTE | Ruft das Erweiterbarkeitsobjekt der obersten Ebene ab. | |
Enums | Ruft eine Auflistung von Enumerationen für das Objekt ab. | |
Functions | Ruft eine Auflistung von Funktionen für das Objekt ab. | |
IDLImports | Ruft die Auflistung der Import-Anweisungen aus der IDL-Datei des übergeordneten Objekts ab. | |
IDLLibraries | Ruft die Auflistung von Library-Elementen für das Objekt ab. | |
Imports | Ruft die Auflistung von #import-Anweisungen für das übergeordnete Objekt ab. | |
Includes | Ruft die Auflistung von #include-Anweisungen für das Objekt ab. | |
Interfaces | Ruft die Auflistung von Schnittstellen für das Objekt ab. | |
IsCaseSensitive | Ruft einen Wert ab, der angibt, ob bei einem Codeelement die Groß-/Kleinschreibung beachtet wird. | |
IsSynchronized | Bestimmt, ob das VCCodeModel mit dem Quellcode für die Projektmappe synchronisiert ist. | |
Language | Ruft die zum Schreiben von Code verwendete Programmiersprache ab. | |
Macros | Ruft die Auflistung von Makros (#define-Anweisungen) für das Objekt ab. | |
Maps | Ruft die Auflistung von Zuordnungen für das Objekt ab. | |
Namespaces | Ruft die Auflistung von Namespaces für das Objekt ab. | |
Parent | Ruft das unmittelbar übergeordnete Objekt eines angegebenen Objekts ab. | |
Structs | Ruft die Auflistung von Strukturelementen für das Objekt ab. | |
Typedefs | Ruft die Auflistung von Typedef-Elementen für das Objekt ab. | |
Unions | Ruft die Auflistung von Union-Elementen für das Objekt ab. | |
Usings | Ruft die Auflistung von #using-Elementen für das Objekt ab. | |
Variables | Ruft die Auflistung von Variablen für das Objekt ab. |
Zum Seitenanfang
Methoden
Name | Beschreibung | |
---|---|---|
AbortTransaction | Bricht die aktuelle Transaktion ab. | |
AddAttribute | Erstellt ein neues Attributcodekonstrukt und fügt den Code an der korrekten Position ein. | |
AddClass | Erstellt ein neues Klassencodekonstrukt und fügt den Code an der korrekten Position ein. | |
AddDelegate | Erstellt ein neues Delegatcodekonstrukt und fügt den Code an der korrekten Position ein. | |
AddEnum | Erstellt ein neues Enumerationscodekonstrukt und fügt den Code an der korrekten Position ein. | |
AddFunction | Erstellt ein neues Funktionscodekonstrukt und fügt den Code an der korrekten Position ein. | |
AddIDLImport | Fügt einer bestimmten IDL-Datei eine neue import-Anweisung hinzu. | |
AddIDLLibrary | Fügt einer bestimmten IDL-Datei eine neue library-Anweisung hinzu. | |
AddImport | Fügt einer bestimmten Datei ein #import-Element hinzu. | |
AddInclude | Fügt einer bestimmten Datei ein #include-Element hinzu. | |
AddInterface | Erstellt ein neues Schnittstellencodekonstrukt und fügt den Code an der korrekten Position ein. | |
AddMacro | Fügt einer bestimmten Datei ein #define-Element hinzu. | |
AddMap | Fügt dem Objekt einen Zuordnungseintrag hinzu. | |
AddNamespace | Erstellt ein neues Namespacecodekonstrukt und fügt den Code an der korrekten Position ein. | |
AddStruct | Erstellt ein neues Strukturcodekonstrukt und fügt den Code an der korrekten Position ein. | |
AddTypedef | Fügt einer bestimmten Datei ein typedef-Element hinzu. | |
AddUnion | Fügt dem VCCodeModel-Objekt ein union-Element hinzu. | |
AddUsing | Fügt einer bestimmten Datei ein #using-Element hinzu. | |
AddVariable | Erstellt ein neues Variablencodekonstrukt und fügt den Code an der korrekten Position ein. | |
CodeElementFromFullName | Ruft eine Auflistung der angegebenen Codeelemente für das Objekt ab. | |
CodeElementFromFullName2 | Ruft eine Auflistung der angegebenen Codeelemente für das Objekt ab.Die Funktion ist mit CodeElementFromFullName identisch, mit der Ausnahme, dass sie während der Suche Namespaces ignoriert. | |
CodeTypeFromFullName | Gibt ein Codeelement zurück, das auf einem voll gekennzeichneten Namen basiert. | |
CodeTypeFromFullName2 | Gibt ein Codeelement zurück, das auf einem voll gekennzeichneten Namen basiert.Die Funktion ist mit CodeTypeFromFullName identisch, mit der Ausnahme, dass sie eine typedef-Auflösung auszuführen versucht. | |
CommitTransaction | Führt für das Objekt einen Commit für die aktuelle Transaktion aus. | |
CreateCodeTypeRef | Ein CodeTypeRef-Objekt, das auf dem übergebenen Datentypindikator basiert. | |
DotNetNameFromLanguageSpecific | Übersetzt den Namespace in das .NET-Format. | |
ElementFromID | Nicht implementiert. | |
GetClassesDerivedFrom | ||
IsValidID | Gibt zurück, ob ein angegebener Name ein gültiger Programmbezeichner für die aktuelle Sprache ist. | |
LanguageSpecificNameFromDotNet | Übersetzt den vollqualifizierten Namen in das Format eines nicht verwalteten Namespaces. | |
Remove | Entfernt das angegebene Projekt aus der Projektmappe. | |
RemoveEx | Entfernt das angegebene Projekt aus der Projektmappe. | |
StartTransaction | Beginnt eine Transaktion. | |
Synchronize | Synchronisiert alle Codemodellobjekte in der Projektmappe mit an Quelldateien vorgenommenen Bearbeitungen. | |
SynchronizeCancellable | Zeigt ein Dialogfeld mit einer Statusanzeige an.Der Benutzer kann den Wartevorgang abbrechen und die Blockierung des Threads aufheben. | |
SynchronizeFiles | Stellt sicher, dass die FileCodeModel-Eigenschaft für eine Projektdatei nicht NULL ist. | |
ValidateMember | Überprüft, ob der vorgeschlagene Name ein gültiger C++-Name für die im Kontext des übergeordneten Objekts angegebene Art ist. | |
ValidateMemberName |
Zum Seitenanfang
Hinweise
Das Codemodell Objekt stellt VCCodeModel-Funktionen in verschiedenen Sprachen bereit, die von Visual Studio unterstützt werden (einschließlich Visual C++) auf Projektebene.
Hauptsächlich wird dieses Objekt verwendet, um ein beliebiges Codeelement zu suchen, das sich innerhalb eines Projekts zugegriffen werden kann (wenn ein vollqualifizierter Name).Darüber hinaus gibt das Objekt die Programmiersprache, in der das Projekt geschrieben werden soll.
Hinweis |
---|
Ein großer Teil der Funktionen dieses Objekts wird vom Visual Studio- CodeModel2-Objekt bereitgestellt. |
Wenn Sie ein VCCodeModel-Objekt innerhalb eines verwalteten Projekts verwenden, schließen Sie Microsoft.VisualStudio.VCCodeModel.dll als Verweis ein.Weitere Informationen zum Hinzufügen von Verweisen auf ein verwaltetes Projekt finden Sie unter Gewusst wie: Hinzufügen oder Entfernen von Verweisen mithilfe des Dialogfelds "Verweise hinzufügen".
Informationen zum Kompilieren und Ausführen dieses Beispiels finden Sie unter Gewusst wie: Kompilieren von Beispielcode für die Erweiterbarkeit des Visual C++-Codemodells.
Beispiele
Diese Funktion gibt das VCCodeModel-Objekt zurück, das das erste Projekt in einer Projektmappe darstellt.
Function GetVCCodeModel() As VCCodeModel
GetVCCodeModel = Nothing
Dim codeModel As CodeModel
Dim vcCodeModel As VCCodeModel
Dim solution As Solution
solution = DTE.Solution
If (solution Is Nothing) Then
MsgBox("A Solution is not open")
Exit Function
Else
If (DTE.Solution.Count <> 0) Then
codeModel = DTE.Solution.Item(1).CodeModel
vcCodeModel = CType(codeModel, VCCodeModel)
If (vcCodeModel Is Nothing) Then
MsgBox("The first project is not a VC++ project.")
Exit Function
Else
GetVCCodeModel = vcCodeModel
End If
End If
End If
End Function