_DTE.GetObject メソッド

更新 : 2007 年 11 月

DTE オブジェクトに遅延バインディングされ、実行時に名前でアクセスできるインターフェイスまたはオブジェクトを取得します。

名前空間 :  EnvDTE
アセンブリ :  EnvDTE (EnvDTE.dll 内)

構文

'宣言
Function GetObject ( _
    Name As String _
) As Object
'使用
Dim instance As _DTE
Dim Name As String
Dim returnValue As Object

returnValue = instance.GetObject(Name)
Object GetObject(
    string Name
)
Object^ GetObject(
    [InAttribute] String^ Name
)
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);
}

アクセス許可

  • 直前の呼び出し元に対する完全な信頼。このメンバは、部分的に信頼されているコードから使用することはできません。詳細については、「部分信頼コードからのライブラリの使用」を参照してください。

参照

参照

_DTE インターフェイス

_DTE メンバ

EnvDTE 名前空間

その他の技術情報

方法 : オートメーション オブジェクト モデルのコード例をコンパイルおよび実行する