次の方法で共有


References.AddActiveX メソッド

ActiveX タイプ ライブラリへの参照を追加します。

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

構文

'宣言
Function AddActiveX ( _
    bstrTypeLibGuid As String, _
    lMajorVer As Integer, _
    lMinorVer As Integer, _
    lLocaleId As Integer, _
    bstrWrapperTool As String _
) As Reference
Reference AddActiveX(
    string bstrTypeLibGuid,
    int lMajorVer,
    int lMinorVer,
    int lLocaleId,
    string bstrWrapperTool
)
Reference^ AddActiveX(
    [InAttribute] String^ bstrTypeLibGuid, 
    [InAttribute] int lMajorVer, 
    [InAttribute] int lMinorVer, 
    [InAttribute] int lLocaleId, 
    [InAttribute] String^ bstrWrapperTool
)
abstract AddActiveX : 
        bstrTypeLibGuid:string * 
        lMajorVer:int * 
        lMinorVer:int * 
        lLocaleId:int * 
        bstrWrapperTool:string -> Reference 
function AddActiveX(
    bstrTypeLibGuid : String, 
    lMajorVer : int, 
    lMinorVer : int, 
    lLocaleId : int, 
    bstrWrapperTool : String
) : Reference

パラメーター

  • bstrTypeLibGuid
    型: System.String
    必ず指定します。タイプ ライブラリのグローバル一意識別子 (GUID) を表す文字列。
  • lMajorVer
    型: System.Int32
    省略可能です。メジャー バージョン番号。省略した場合は、0 が使用されます。
  • lMinorVer
    型: System.Int32
    省略可能です。マイナー バージョン番号。省略した場合は、0 が使用されます。
  • lLocaleId
    型: System.Int32
    省略可能なロケール ID詳細については、「LocaleID」を参照してください。
  • bstrWrapperTool
    型: System.String
    タイプ ライブラリのアセンブリ ラッパーを生成するときに使用されるラッパー ツール。サポートされている値を次の表に示します。
    [1|1] 値
    [1|2] 結果
    [2|1] "tlbimp"
    [2|2] プロジェクト システムは、COM オブジェクトのメソッドおよびプロパティへのアクセスに適した汎用ラッパーを生成します。
    [3|1] "aximp"
    [3|2] プロジェクト システムは、Windows フォームで ActiveX のホストに使用するラッパーを生成します。
    [4|1] "" (空の文字列)
    [4|2] プロジェクト システムは、指定したタイプ ライブラリの基本相互運用性アセンブリが存在するかどうかを確認します。存在する場合は、そのアセンブリを COM オブジェクトのメソッドおよびプロパティのラッパーとして使用します。存在しない場合は、"tlbimp" を指定した場合と同じ動作になります。

戻り値

型: VSLangProj.Reference
要求された ActiveX ライブラリ オブジェクトの Reference オブジェクトを返します。

解説

AddActiveX メソッドは、指定したオブジェクトのプロジェクトへの参照と、そのオブジェクトの依存関係への参照を追加します。 したがって、このメソッドを 1 回呼び出すことによって、References コレクションに複数の参照が追加される場合があります。

GUID の有効な形式は "{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}" です。X には 16 進数の数字 (0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F) が代入されます。 ActiveX オブジェクトの GUID を決定する 1 つの方法は、Visual Studio に付属の Oleview.exe ツールを使用して .ocx または .tlb ファイルを表示する方法です。

同じ ID の参照が既にコレクションに存在する場合は、エラーが発生します。

有効な COM オブジェクトを参照しているときに、"ライブラリが登録されていません。" というエラー メッセージが表示された場合は、その原因として、有効な lMajorVer パラメーター値を AddActiveX メソッドに渡していないことが考えられます。 既定では、AddActiveX は、GUID 以外のすべてに対して値 0 を使用します。 たとえば、COM オブジェクトのバージョンが 1 の場合、typelib のバージョン 0 は登録されていないため、呼び出しは失敗します。 また、バージョン 1.0 の Windows メディア プレーヤーを呼び出した場合、

ref = refColl.AddActiveX("{22D6F304-B0F6-11D0-94AB-0080C74C7E95}")

では前述のエラーが発生しますが、

ref = refColl.AddActiveX("{22D6F304-B0F6-11D0-94AB-0080C74C7E95}", 1)

正しく動作します。

このメソッドは、登録されているタイプ ライブラリだけを追加します。 AddActiveX メソッドに指定された情報を引数として、オートメーション (以前のバージョンの OLE オートメーション) API 関数の QueryPathOfRegTypeLib が呼び出されます。

ActiveX オブジェクトのファイル名が明らかな場合は、Add を使用してオブジェクトを追加できます。 Add メソッドには、GUID、バージョン、およびロケール ID は必要ありません。

参照を削除するには、Remove を使用します。

COM オブジェクトのラッパー、ActiveX のホスト、主な相互運用性アセンブリの詳細については、「Tlbimp.exe (タイプ ライブラリ インポーター)」および「Aximp.exe (Windows フォーム ActiveX コントロール インポーター)」を参照してください。

' Macro Editor
' Add a reference to the ActiveX Data Objects Library, Version 2.5
Imports VSLangProj
Public Sub AddARef()
   Try
      Dim proj As VSLangProj.VSProject = _
         CType(DTE.Solution.Projects.Item(1).Object, _
         VSLangProj.VSProject)
      ' GUID for ActiveX Data Objects, version 2.5
      proj.References.AddActiveX( _
      "{00000205-0000-0010-8000-00AA006D2EA4}", 2, 5)
   Catch ex As System.Exception
      MsgBox("Cannot add that reference.")
   End Try
End Sub

.NET Framework セキュリティ

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

参照

参照

References インターフェイス

VSLangProj 名前空間