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
형식: String필수입니다. 문자열로 표현된 형식 라이브러리의 GUID(Globally Unique IDentifier)입니다.
lMajorVer
형식: Int32선택 사항 주 버전 번호입니다. 이 인수를 생략하면 0이 사용됩니다.
lMinorVer
형식: Int32선택 사항 부 버전 번호입니다. 이 인수를 생략하면 0이 사용됩니다.
lLocaleId
형식: Int32선택적 로캘 ID입니다. 자세한 내용은 LocaleID을 참조하십시오.
bstrWrapperTool
형식: String형식 라이브러리의 어셈블리 래퍼를 생성할 때 사용되는 래퍼 도구입니다. 다음 표에서는 지원되는 값을 보여 줍니다.
[1|1] 값
[1|2] 결과
[2|1] "tlbimp"
[2|2] 프로젝트 시스템에서 COM 개체의 메서드와 속성에 액세스하기에 적합한 일반 래퍼를 생성합니다.
[3|1] "aximp"
[3|2] 프로젝트 시스템에서 Windows Forms이 ActiveX 호스팅에 사용할 래퍼를 생성합니다.
[4|1] "" (빈 문자열)
[4|2] 프로젝트 시스템에서 지정된 형식 라이브러리의 주 interop 어셈블리가 있는지 검사합니다. 어셈블리가 있는 경우 해당 어셈블리는 COM 개체의 메서드와 속성에 대한 래퍼로 사용됩니다. 또한 어셈블리가 없는 경우에는 "tlbimp" 가 지정된 경우와 동일하게 동작합니다.
반환 값
형식: VSLangProj.Reference
요청된 ActiveX 라이브러리 개체에 대한 Reference 개체를 반환합니다.
설명
AddActiveX 메서드는 지정된 개체 및 이 개체에 표시되는 모든 종속성에 대한 참조를 프로젝트에 추가합니다. 따라서 이 메서드를 한 번만 호출해도 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를 결정하는 방법 중 하나는 Visual Studio와 함께 제공되는 Oleview.exe 도구를 사용하여 .ocx 파일이나 .tlb 파일을 보는 것입니다.
컬렉션에 이미 동일한 ID를 가진 참조가 있으면 오류가 발생합니다.
올바른 lMajorVer 매개 변수 값을 AddActiveX 메서드에 전달하지 않으면 올바른 COM 개체를 참조할 때 "라이브러리가 등록되지 않았습니다." 오류가 발생합니다. 기본적으로 AddActiveX는 GUID를 제외한 모든 속성에 대해 0 값을 사용합니다. 예를 들어 COM 개체의 버전이 1이면 typelib의 등록된 버전 0이 없으므로 호출이 실패합니다. Windows Media Player 1.0 버전을 호출하는 경우
ref = refColl.AddActiveX("{22D6F304-B0F6-11D0-94AB-0080C74C7E95}")
이 코드를 실행하면 위에서 언급한 오류가 생성되지만
ref = refColl.AddActiveX("{22D6F304-B0F6-11D0-94AB-0080C74C7E95}", 1)
이 코드는 올바로 실행됩니다.
이 메서드는 등록된 형식 라이브러리만 추가합니다. 자동화(이전에 OLE 자동화) API 함수인 QueryPathOfRegTypeLib를 호출하고 제공된 정보를 AddActiveX 메서드에 전달합니다.
ActiveX 개체의 파일 이름을 알고 있으면 Add를 사용하여 개체를 추가할 수도 있습니다. Add 메서드에는 GUID, 버전 또는 로캘 ID가 필요하지 않습니다.
참조를 제거하려면 Remove를 사용합니다.
COM 개체 래퍼, ActiveX 호스팅 및 주 상호 운용성 어셈블리에 대한 자세한 내용은 Tlbimp.exe(형식 라이브러리 가져오기) 및 Aximp.exe (Windows Forms 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 보안
- 직접 실행 호출자의 경우 완전히 신뢰합니다. 이 멤버는 부분적으로 신뢰할 수 있는 코드에서 사용할 수 없습니다. 자세한 내용은 부분 신뢰 코드에서 라이브러리 사용를 참조하세요.