References.AddActiveX(String, Int32, Int32, Int32, String) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Adiciona uma referência a uma biblioteca de tipos do ActiveX.
VSLangProj::Reference AddActiveX(std::wstring const & bstrTypeLibGuid, int lMajorVer = 0, int lMinorVer = 0, int lLocaleId = 0, std::wstring const & bstrWrapperTool = "");
[System.Runtime.InteropServices.DispId(7)]
public VSLangProj.Reference AddActiveX (string bstrTypeLibGuid, int lMajorVer = 0, int lMinorVer = 0, int lLocaleId = 0, string bstrWrapperTool = "");
[<System.Runtime.InteropServices.DispId(7)>]
abstract member AddActiveX : string * int * int * int * string -> VSLangProj.Reference
Public Function AddActiveX (bstrTypeLibGuid As String, Optional lMajorVer As Integer = 0, Optional lMinorVer As Integer = 0, Optional lLocaleId As Integer = 0, Optional bstrWrapperTool As String = "") As Reference
Parâmetros
- bstrTypeLibGuid
- String
Obrigatórios. O GUID (identificador global exclusivo) da biblioteca de tipos, expresso como uma cadeia de caracteres.
- lMajorVer
- Int32
Opcional. O número da versão principal. Se omitido, será usado 0.
- lMinorVer
- Int32
Opcional. O número da versão secundária. Se omitido, será usado 0.
- bstrWrapperTool
- String
A ferramenta de wrapper a ser usada ao gerar um wrapper de assembly para a biblioteca de tipos. Os valores com suporte são descritos na tabela a seguir. [1 | 1] Valor [1 | 2] resultado [2 | 1] "Tlbimp" [2 | 2] o sistema de projeto gera um wrapper genérico adequado para acessar os métodos e as propriedades do objeto COM. [3 | 1] "aximp" [3 | 2] o sistema de projeto gera um wrapper que o Windows Forms usa para hospedagem do ActiveX. [4 | 1] "" (cadeia de caracteres vazia) [4 | 2] o sistema de projeto verifica se existe um assembly de interoperabilidade primário para a biblioteca de tipos especificada. Se for encontrado, esse assembly será usado como o wrapper para os métodos e as propriedades do objeto COM. Se não for encontrado, o comportamento será o mesmo que "Tlbimp" foi especificado.
Retornos
Retorna um Reference objeto para o objeto da biblioteca do ActiveX solicitado.
- Atributos
Exemplos
' 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
Comentários
O AddActiveX método adiciona referências a um projeto para o objeto especificado e quaisquer dependências listadas pelo objeto. Portanto, uma chamada para esse método pode fazer com que mais de uma referência seja adicionada à References coleção.
O formato válido para um GUID é "{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}", em que X é um dígito hexadecimal (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F). Um método para determinar o GUID de um objeto ActiveX é exibir o arquivo. ocx ou. tlb usando a ferramenta de Oleview.exe distribuída com o Visual Studio.
Um erro será gerado se uma referência com a mesma identidade já estiver na coleção.
Se você receber um erro "biblioteca não registrada" ao fazer referência a um objeto COM válido, é provável que você não esteja passando um valor de parâmetro válido lMajorVer para o AddActiveX método. Por padrão, AddActiveX o usa um valor de 0 para tudo, exceto o GUID. Se a versão do objeto COM for, por exemplo, 1, a chamada falhará porque não há nenhuma versão registrada 0 do TypeLib. Por exemplo, ao chamar a versão 1,0 do Windows Media Player
ref = refColl.AddActiveX("{22D6F304-B0F6-11D0-94AB-0080C74C7E95}")
produz o erro mencionado anteriormente, mas
ref = refColl.AddActiveX("{22D6F304-B0F6-11D0-94AB-0080C74C7E95}", 1)
funciona corretamente.
Esse método irá adicionar apenas uma biblioteca de tipos registrada. É feita uma chamada para QueryPathOfRegTypeLib , uma função de API de automação (anteriormente, automação OLE), passando as informações fornecidas para o AddActiveX método.
Se o nome do arquivo do objeto ActiveX for conhecido, o objeto poderá ser adicionado usando o Add . O Add método não requer o GUID, a versão ou a ID de localidade.
Para remover uma referência, use o Remove .
Para obter mais informações sobre os wrappers de objetos COM, Hospedagem de ActiveX e assemblies de interoperabilidade primária, consulte Tlbimp.exe (tipo de importador de biblioteca de tipos) e Aximp.exe (Windows Forms importador de controle ActiveX).