Skip Navigation Links
Novas Tecnologias
Ferramentas Adicionais
Ferramentas Adicionais


Dica No :
401
Assunto : Visual Basic
Titulo: Identificando as classes existentes em uma DLL

Gostou do texto ? Vote e dê sua opinião! Pontuação atual :

Translate this page now :






Adicione aos Favoritos!
BlogBlogs Rec6 Linkk Ueba Technorati Delicious DiggIt! StumbleUpon



Na dica 74 (http://www.bufaloinfo.com.br/dicas.asp?cod=74) expliquei como registrar um componente via código. Isso é muito útil para o late binding. Mas ainda fica algo pendente : Como descobrir o progID de cada classe existente no componente ?

Para resolver esse problema encontramos uma biblioteca COM chamada TypeLib Information. Podemos então fazer o references para esta biblioteca e utiliza-la para descobrir as classes contidas em uma DLL.

Considerando que temos um form com uma listbox, observe o seguinte código :

Dim x As New TLI.TLIApplication
Dim y As TypeLibInfo
Dim z As SearchResults
Dim w As SearchItem

Set y = x.TypeLibInfoFromFile("C:\Max\Exercicio08\BancosdeDados.dll")
List1.AddItem y.Name
Set z = y.GetTypes()

For Each w In z
List1.AddItem w.Name
Next

O método TypeLibInfoFromFile carrega a type library contida em uma DLL, resultando em um objeto do tipo TyhpeLibInfo. A propriedade Name que adicionamos na listbox é o nome da biblioteca, ou seja, a 1a parte do progID.

Em seguida utilizamos o método GetTypes para obter os tipos (classes) contidos dentro da type library e fazemos um for/each para inseri-los na listbox.


Nome :
E-mail:
Comentarios :
 
 
Os Últimos Comentários
data: 10/14/2016 7:12:00 PM
nome: ffriRhlvdM
email: jimos4581rzt@hotmail.com
comentário:
YiNcI7 http://www.FyLitCl7Pf7kjQdDUOLQOuaxTXbj5iNG.com

data: 10/14/2016 6:38:00 PM
nome: rYWRLpIfLhZIuycBcAF
email: jimos4581rzt@hotmail.com
comentário:
IeGJW9 http://www.FyLitCl7Pf7kjQdDUOLQOuaxTXbj5iNG.com

data: 8/9/2016 4:41:00 PM
nome: OYjiCzbOCJNCByfw
email: jimos4581rt@hotmail.com
comentário:
5z7flY http://www.FyLitCl7Pf7kjQdDUOLQOuaxTXbj5iNG.com

 1  
Dicas
Dica do Dia
Receba Dicas Por Email
E-mail :  
 


 (help)
Aceito receber informativos do devASPNet, informações de eventos e treinamentos

Veja Quais Informativos Você Receberá

Pesquisar Dicas
Pesquisar Artigos, Dicas e Noticias

Banco de Dados
Algumas Entrevistas
Links Importantes

Búfalo Informática, Treinamento e Consultoria
R. Alvaro Alvim, 37/920 Centro - Cinelândia - Rio de Janeiro Cep: 20031-010
Tel : (21) 2262-1368 (21) 9240-5134 E-mail : Contato@bufaloinfo.com.br