String) Dim RET As String RET = Space$(255) RetLen = GetPrivateProfileString(Secao, Chave, "", RET, Len(RET), ArqINI) RET = Left$(RET, RetLen) ReadINI = RET RET = EmptyEnd FunctionPublic Sub WriteINI(ByVal Secao As String, ByVal Chave As String, ByVal Valor As String)WritePrivateProfileString Secao, Chave, Valor, ArqINIEnd SubOnde, a primeira utiliza a API GetPrivateProfileString serve para Ler dados do Arquivo INI baseando-se na Secao e Chave passada a ela, e a segunda por sua vez, utiliza a API WritePrivateProfileString serve para Escrever no Arquivo INI.Agora vamos criar duas propriedades para nossa DLL uma delas para setar o Diretorio do Arquivo INI, e outra para Retornar o Diretorio do Arquivo INI, sao elas:Public Property Let SetDiretorioIni(ByVal Diretorio As String) ArqINI = DiretorioEnd PropertyPublic Property Get GetDiretorioIni() As String GetDiretorioIni = ArqINIEnd PropertyPor ultimo (na questao de funcoes) vamos fazer uma funcao para verificar a existencia do arquivo informado. Para isso usaremos a funcao Dir que e intrinseca (padrao) no VB, a mesma recebe o diretorio e o tipo a ser validado, no caso um Arquivo. Se o seu retorno for (vazio) entao o arquivo nao existe, caso contrario retornara o nome do arquivo, o codigo segue abaixo.Public Property Get ExisteArquivo() As Boolean ExisteArquivo = IIf(Dir(ArqINI, vbArchive) = "", False, True)End PropertyBom e isso. Ai esta sua primeira DLL implementada, simples, porem funcional. Agora compile sua DLL no Diretorio System32 da sua pasta Windows.Agora vamos utiliza-la. Para isso crie um novo projeto Standard EXE e nomeie-o deExemploINI. Desenhe os controles conforme a tabela seguinte:Form1 Propriedade e ControlesTipoPropriedadesFormName = frmMainCaption = PrincipalBorderStyle = 3 'FixaLabelName = LabelCaption = &EntradaIndex = 0TextBoxName = txtEntradaText=CommandButtonName = cmdEscreverCaption = &EscreverLabelName = LabelCaption = &ResultadoIndex = 1TextBoxName = txtResultadoText=CommandButtonName = cmdLerCaption = &LerLabelName = LabelCaption = Dire&torioIndex = 2CommandButtonName = cmdSairCaption = &SairTextBoxName = txtDiretorioText=Para podermos utilizar as funcoes da DLL criada anteriormente devemos nos referenciar a ela, para isso, no menu Project escolha o item References, e localize a sua DLL, no casoArquivoINI.dll, caso ela nao esteja na lista clique em Browse e a localize.Feito isso va ao codigo do frmMain e faca a declaracao da classe da seguinte forma:Private INI As New ArquivoINI.INISe voce nao entendeu o que esta acontecendo, calma, e o seguinte, voce para utilizar uma funcao de uma determinada classe de uma biblioteca precisa ter a mesma declarada, no exemplo acima declaremos o objeto INI do tipo ArquivoINI.INI.No evento load do form vamos informar o diretorio do arquivo INI a ser utilizado (no exemplo sera no diretorio do executavel com o nome de config.ini) e tambem para enfatizaremos a funcao de verificacao de existencia do arquivo:Private Sub Form_Load() txtDiretorio.Text = App.Path & "\Config.INI" INI.SetDiretorioIni = txtDiretorio.Text If Not (INI.ExisteArquivo) Then MsgBox "ATENCAO: Arquivo '" & INI.GetDiretorioIni & "' nao foi Encontrado" & vbNewLine & "Para Execucao das Operacoes sera criado um novo arquivo", vbCriticalEnd SubBasta agora implementar os botoes de leitura e escrita no arquivo, no evento click dos CommandButton cmdLer e cmdEscrever, conforme a seguir:Private Sub cmdEscrever_Click() INI.WriteINI "LOGIN", "ULTUSUARIO", Trim(txtEntrada.Text)End SubPrivate Sub cmdLer_Click() txtResultado.Text = INI.ReadINI("LOGIN", "ULTUSUARIO")End SubE como sempre o indispensavel cmdSairPrivate Sub cmdSair_Click()