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


_DTE.GetObject - метод

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

Пространство имен:  EnvDTE
Сборка:  EnvDTE (в EnvDTE.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.

Заметки

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

Метод IExtenderSite.GetObject поддерживает для параметра Name только значение "DTE".Это предназначено для того, чтобы поставщики расширений имели доступ к объекту 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

См. также

Ссылки

_DTE Интерфейс

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

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

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