Desenvolvimento - Visual Basic .NET

Resgatando Informações de AssemblyInfo

Este é um artigo simples sobre o assemblyInfo.vb e mostra como armazenar e resgatar informações confidencias sobre seu Projeto / Sistema, o que é muito diferente de armazenar e utilizar informações em um Web.config / App.config ou qualquer outro arquivo XML / Texto.

por André Luis Calderan



Este é um artigo simples sobre o assemblyInfo.vb e mostra como armazenar e resgatar informações confidencias sobre seu Projeto / Sistema, o que é muito diferente de armazenar e utilizar informações em um Web.config / App.config ou qualquer outro arquivo XML / Texto, nesses arquivos o usuário ou qualquer outra pessoa pode alterar as informações nela contida, simplesmente editando com um Editor de Texto (como o Notepad). O assemblyInfo.(vb/cs) é automaticamente criado quando um Projeto é criado, pois contém informações base sobre a DLL a ser gerada (Assembly).

1 - Abra o arquivo AssemblyInfo.vb

2 - Note que existem varias tags <Assembly: XXXX("Conteudo")>, cada qual armazena um tipo específico de informação.

3 - pode-se criar novas tags e/ou alterar o conteúdo das já existentes, vamos criar a informação referente a Empresa.

Note pelo intellisence que existem muitas opções de informações do Projeto / Sistema, como versão, autoria, cultura e diversos outros tipos.

4 - Agora vamos resgatar as informações. Criei um form para ilustrar, e demonstrar as informações de autoria do Sitema.

5 - Vamos para o fonte do form.

Atribua o namespace System.Reflection, que é o responsável pela manipulação / comunicação com as informações do AssemblyInfo, e já instancie um objeto (nesse caso "asmb") em referência ao Assembly, já estamos criando uma referência para a informação da empresa veja :

6 - Utilizando o método GetCustomAttribute dos objetos criados, estará sendo resgatado as informações do AssemblyInfo, pelo objeto "asmb".

(Fonte - sem código gerado pelo Visual Studio)

Imports System.Reflection

Public Class FSobre
    Inherits System.Windows.Forms.Form

    Private asmb As [Assembly] = System.Reflection.Assembly.GetExecutingAssembly
    Private empresa As AssemblyCompanyAttribute = _
        AssemblyCompanyAttribute.GetCustomAttribute( _
        asmb, GetType(AssemblyCompanyAttribute))
    Private autor As AssemblyCopyrightAttribute = _
        AssemblyCopyrightAttribute.GetCustomAttribute( _
        asmb, GetType(AssemblyCopyrightAttribute))

    Private Sub FSobre_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        LEmpresa.Text = empresa.Company.ToString
        LAutor.Text = autor.Copyright.ToString
    End Sub

End Class

7 - Agora é só utilizar os atributos criados !

8 - Compile e veja o resultado.

André Luis Calderan

André Luis Calderan