次の方法で共有


Reference2 インターフェイス

VSLangProj 名前空間の Reference インターフェイスを拡張します。

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

構文

'宣言
<GuidAttribute("4FFF24C5-5644-4A47-A48A-B74C3F1F8FC8")> _
Public Interface Reference2 _
    Inherits Reference
[GuidAttribute("4FFF24C5-5644-4A47-A48A-B74C3F1F8FC8")]
public interface Reference2 : Reference
[GuidAttribute(L"4FFF24C5-5644-4A47-A48A-B74C3F1F8FC8")]
public interface class Reference2 : Reference
[<GuidAttribute("4FFF24C5-5644-4A47-A48A-B74C3F1F8FC8")>]
type Reference2 =  
    interface
        interface Reference
    end
public interface Reference2 extends Reference

Reference2 型で公開されるメンバーは以下のとおりです。

プロパティ

  名前 説明
パブリック プロパティ BuildNumber 参照のビルド番号を取得します。読み取り専用。 (Reference から継承されます。)
パブリック プロパティ BuildNumber 参照のビルド番号を取得します。読み取り専用。
パブリック プロパティ Collection このプロパティをサポートしているオブジェクトまたはこのコード コンストラクターに含まれているオブジェクトを含むコレクションを取得します。 (Reference から継承されます。)
パブリック プロパティ Collection References のコレクションを取得します。
パブリック プロパティ ContainingProject 選択した項目を含むプロジェクトを取得します。読み取り専用。 (Reference から継承されます。)
パブリック プロパティ ContainingProject 参照を含む Project を取得します。
パブリック プロパティ CopyLocal 参照を local bin のパスにコピーするかどうかを決定します。 (Reference から継承されます。)
パブリック プロパティ CopyLocal 参照を local bin のパスにコピーするかどうかを決定します。
パブリック プロパティ Culture 参照のカルチャ文字列を取得します。読み取り専用。 (Reference から継承されます。)
パブリック プロパティ Culture 参照のカルチャ文字列を取得します。読み取り専用。
パブリック プロパティ Description 参照の説明文を取得します。読み取り専用。 (Reference から継承されます。)
パブリック プロパティ Description 参照の説明文を取得します。読み取り専用。
パブリック プロパティ DTE トップレベルの機能拡張オブジェクトを取得します。 (Reference から継承されます。)
パブリック プロパティ DTE トップレベルの機能拡張オブジェクトを取得します。
パブリック プロパティ Extender[String] 要求された Extender オブジェクトがこのオブジェクトで利用できる場合はそれを取得します。 (Reference から継承されます。)
パブリック プロパティ Extender[String] 要求された Extender オブジェクトがこのオブジェクトで利用できる場合はそれを返します。
パブリック プロパティ ExtenderCATID オブジェクトの Extender カテゴリ ID (CATID) を取得します。 (Reference から継承されます。)
パブリック プロパティ ExtenderCATID オブジェクトの Extender カテゴリ ID (CATID) を取得します。
パブリック プロパティ ExtenderNames オブジェクトで使用できる Extender のリストを取得します。 (Reference から継承されます。)
パブリック プロパティ ExtenderNames オブジェクトで使用できる Extender のリストを取得します。
パブリック プロパティ Identity 参照の一意の識別子を取得します。読み取り専用。 (Reference から継承されます。)
パブリック プロパティ Identity 参照の一意の識別子を取得します。読み取り専用。
パブリック プロパティ MajorVersion 参照のメジャー バージョン番号を取得します。読み取り専用。 (Reference から継承されます。)
パブリック プロパティ MajorVersion 参照のメジャー バージョン番号を取得します。読み取り専用。
パブリック プロパティ MinorVersion 参照のマイナー バージョン番号を取得します。読み取り専用。 (Reference から継承されます。)
パブリック プロパティ MinorVersion 参照のマイナー バージョン番号を取得します。読み取り専用。
パブリック プロパティ Name オブジェクトの名前を取得します。読み取り専用。 (Reference から継承されます。)
パブリック プロパティ Name オブジェクトの名前を取得します。読み取り専用。
パブリック プロパティ Path 参照ファイルへのパスを取得します。読み取り専用。 (Reference から継承されます。)
パブリック プロパティ Path 参照ファイルへのパスを取得します。読み取り専用。
パブリック プロパティ PublicKeyToken 参照アセンブリの公開キー トークンを取得します。 (Reference から継承されます。)
パブリック プロパティ PublicKeyToken 参照アセンブリの公開キー トークンを取得します。
パブリック プロパティ RevisionNumber 参照のリビジョン番号を取得します。読み取り専用。 (Reference から継承されます。)
パブリック プロパティ RevisionNumber 参照のリビジョン番号を取得します。読み取り専用。
パブリック プロパティ RuntimeVersion 参照がビルドされた対象のランタイムのバージョンを取得または設定します。読み取り専用。
パブリック プロパティ SourceProject 参照先がプロジェクトの場合は、Project オブジェクトを取得します。それ以外の場合は、Nothing (nullnull 参照 (Visual Basic では Nothing) 参照) を返します。読み取り専用。 (Reference から継承されます。)
パブリック プロパティ SourceProject 参照先がプロジェクトの場合は、Project オブジェクトを取得します。それ以外の場合は、Nothing (nullnull 参照 (Visual Basic では Nothing) 参照) を返します。読み取り専用。
パブリック プロパティ StrongName 参照が公開キーと秘密キーのペアで署名されているかどうかを示す値を取得します。読み取り専用。 (Reference から継承されます。)
パブリック プロパティ StrongName 参照が公開キーと秘密キーのペアで署名されているかどうかを示す値を取得します。読み取り専用。
パブリック プロパティ Type アセンブリと COM コンポーネントのどちらが参照先かを示す prjReferenceType 値を取得します。読み取り専用。 (Reference から継承されます。)
パブリック プロパティ Type アセンブリと COM コンポーネントのどちらが参照先かを示す prjReferenceType 値を取得します。読み取り専用。
パブリック プロパティ Version 選択されている参照のバージョンを取得します。 (Reference から継承されます。)
パブリック プロパティ Version 選択されている参照のバージョンを取得します。

このページのトップへ

メソッド

  名前 説明
パブリック メソッド Remove() 参照を含む References オブジェクトから参照を取得します。 (Reference から継承されます。)
パブリック メソッド Remove() 参照を含む References オブジェクトから参照を削除します。

このページのトップへ

解説

VSProject オブジェクトの References コレクションによって返される Reference オブジェクトは、Reference インターフェイスと Reference2 インターフェイスの両方をサポートしています。 Reference2 のメンバーにアクセスするには、オブジェクトを Reference2 にキャストします。

Reference2 は、VSLangProj 名前空間に存在する Reference のすべてのメンバーと以下を定義します。

テンプレートを使用して新しいプロジェクトを作成し、参照を 2 つ追加し、その参照の型を表示する例を次に示します。

'Macro Editor
Imports VSLangProj
Sub NewProject()
   Dim newName As String = InputBox("New project name:")
   ' Create a new project in the solution based on an existing
   ' project.
   Dim newProject As Project = DTE.Solution.AddFromTemplate( _
      "C:\TemplatePath\Template.vbproj", _
      "C:\ProjectPath\" & newName, newName)
        
   ' Add a COM reference and display its type.
   Dim vsProject As VSProject = CType(newProject.Object, VSProject)
   Dim newRef As Reference
   newRef = vsProject.References.Add("C:\WINNT\System32\msmask32.ocx")
   MsgBox(GetRefTypeName(newRef))
        
   ' Add an Assembly reference and display its type, "Assembly".
   newRef = vsProject.References.Add("C:\SomeProject\bin\SomeProject.dll")
   MsgBox(GetRefTypeName(newRef))
End Sub

Private Function GetRefTypeName(ByVal ref As Reference) _
   As String
   Dim type As String
   Select Case ref.Type
      Case prjReferenceType.prjReferenceTypeActiveX
         type = "COM"
      Case prjReferenceType.prjReferenceTypeAssembly
         type = "Assembly"
   End Select
   Return type
End Function

参照のプロパティの簡単なレポートを作成する例を次に示します。

' Macro Editor
' Create a small report about a reference.
Imports VSLangProj
Function ReportReferences(ByVal aRef As Reference) As String
   Dim report As String = ""
   Dim type As String
   ' Each entry in the ArrayList will contain a label and a value.
   Dim ht As System.Collections.ArrayList = _
      New System.Collections.ArrayList()
   With aRef
      ht.Add(New String() {"Name", .Name})
      ht.Add(New String() {"Description", .Description})
      ht.Add(New String() {"Version", String.Format("{0}.{1}.{2}.{3}", _
         .MajorVersion, .MinorVersion, .BuildNumber, .RevisionNumber)})
      ht.Add(New String() {"Location", .ContainingProject.FullName})
      Select Case .Type
         Case prjReferenceType.prjReferenceTypeActiveX
            type = "COM"
         Case prjReferenceType.prjReferenceTypeAssembly
            type = "Assembly"
      End Select
      ht.Add(New String() {"Type", type})
      ht.Add(New String() {"Culture", .Culture})
   End With
        
   Dim datas() As String
   For Each datas In ht
      report &= datas(0) & ControlChars.Tab & datas(1) & ControlChars.CrLf
   Next
   Return report
End Function

参照

参照

VSLangProj2 名前空間