Поделиться через


DTE2.GetObject - метод (String)

Возвращает интерфейс или объект с поздней привязкой к объекту DTE, и к которому во время выполнения можно получить доступ по имени.

Пространство имен:  EnvDTE80
Сборка:  EnvDTE80 (в EnvDTE80.dll)

Синтаксис

'Декларация
Function GetObject ( _
    Name As String _
) As Object
Object GetObject(
    string Name
)
Object^ GetObject(
    [InAttribute] String^ Name
)
abstract GetObject : 
        Name:string -> Object 
function GetObject(
    Name : String
) : Object

Параметры

  • Name
    Тип: System.String
    Обязательный.Имя извлекаемого объекта.

Возвращаемое значение

Тип: System.Object
Интерфейс или объект с поздней привязкой к объекту DTE.

Реализации

_DTE.GetObject(String)

Заметки

GetObject наиболее полезен при работе с языками, не поддерживающими раннее связывание. В этом случае можно указать нужный интерфейс или объект по имени, например DTE.GetObject("VCProjects").

IExtenderSite.GetObject поддерживает только значение DTE в качестве параметра Name. Это предназначено для того, чтобы поставщики расширений имели доступ к объекту DTE.

Примеры

Sub GetObjectExample(ByVal dte As DTE2)

    ' NOTE: This example requires a reference to the 
    '       Microsoft.VisualStudio.VCCodeModel namespace.

    Dim idents() As String = {"short", "class", "void", "var"}
    Dim langMan As VCLanguageManager = _
        CType(dte.GetObject("VCLanguageManager"), VCLanguageManager)

    ' Validate the names in idents.
    Dim name, msg As String
    For Each name In idents
        If langMan.ValidateIdentifier(name) Then
            msg &= """" & name & """ is a valid identifier." & vbCrLf
        Else
            msg &= """" & name & """ is not a valid identifier." & _
                vbCrLf
        End If
    Next

    MsgBox(msg)
End Sub
public void GetObjectExample(DTE2 dte)
{
    // NOTE: This example requires a reference to the 
    //       Microsoft.VisualStudio.VCCodeModel namespace.

    string[] idents = {"short", "class", "void", "var"};
    VCLanguageManager langMan = 
        (VCLanguageManager)dte.GetObject("VCLanguageManager");

    // Validate the names in idents.
    string msg = "";
    foreach (string name in idents)
    {
        if (langMan.ValidateIdentifier(name))
            msg += "\"" + name + "\" is a valid identifier." + 
                Environment.NewLine;
        else
            msg += "\"" + name + "\" is not a valid identifier." + 
                Environment.NewLine;
    }

    MessageBox.Show(msg);
}

Безопасность платформы .NET Framework

См. также

Ссылки

DTE2 Интерфейс

GetObject - перегрузка

EnvDTE80 - пространство имен

Другие ресурсы

Практическое руководство. Компиляция и выполнение примеров кода модели объектов автоматизации