USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Arquivo .INI
Paulo Sergio
não registrado
Postada em 06/11/2008 00:57 hs   
ai galera to querendo faze um projeto aki e pega algumas informacoes de um arquivo .INI  mais naum sei nem por onde comesa as seguintes informacoes q ele deve ser configurado pelo ini q esta sendo pelo projeto
 
--
Private Sub Form_Load()
Site = "www.google.com.br"
IP = "127.0.0.1"
Porta() = Split("44405;55901", ";")
Call Winsock1.Connect(IP, Porta(1))
WebBrowser1.Navigate2 (Site)
End Sub
--
 
quero faze um ini q ele iria pega a porta o ip e o site pelo ini
no codigo acima ele esta pegando pelo form..
se algum tive nocao de como faze.. pf me ajuda
     
Ash Katchup
CAXIAS DO SUL
RS - BRASIL
ENUNCIADA !
Postada em 06/11/2008 08:18 hs            
Cara, recentemente eu fiz um esquema assim. Olha como eu leio o arquivo:
'____________________________
  If Dir(WF_ArqConf) <> "" Then
        '
        Open WF_ArqConf & "01" For Input Access Read As #1
        '
        WL_Ind = 0
        Do While Not EOF(1)
            Line Input #1, WL_Linha
            '
            If WL_Linha <> "" Then
                WL_Texto(WL_Ind) = Trim(Split(WL_Linha, "=")(1))
                WL_Ind = WL_Ind + 1
            End If
        Loop
        '
        Close #1
        '
    End If
'____________________________

Para saber o que ler eu fiz o seguinte: coloquei "=" como delimitador. Ou seja, o arquivo precisa ser
<Campo> = <valor>
<Campo1> = <valor1>
<Campo2> = <valo2>

Então eu criei um vetor para armazenar os resultados, e depois varro este vetor retirando os dados que eu quero.

__________________

"It is the way of men to make monsters...and it is the nature of
monsters to destroy their makers."

-F.E.A.R. (First Encounter Assault Recon )
   
LCRamos
Pontos: 2843
GOIANIA
GO - BRASIL
ENUNCIADA !
Postada em 06/11/2008 08:30 hs            
Em um módulo:
 
Public Function sGetINI(sINIFILE As String, sSection As String, sKey _
 As String, sDefault As String) As String
 Dim sTEMP As String * 256
 Dim nLENGTH As Integer
 sTEMP = Space$(256)
 nLENGTH = GetPrivateProfileString(sSection, sKey, sDefault, sTEMP, _
 256, sINIFILE)
 sGetINI = Left$(sTEMP, nLENGTH)
End Function
 
No Formulário:
 
Private Sub Form_Load()
 Dim sINIFILE As String
 Dim sDRIVE As String
sINIFILE = App.Path & "NOMEDOARQUIVO.INI"
    If Dir$(sINIFILE) = "" Then
        MsgBox"Verificar Arquivo de Configurações na Inicialização"
        End
    End If
    sDRIVE = sGetINI(sINIFILE, "UserDrive", "Drive", "C:")
End Sub
 
Bem, ai peguei o Drive do BD, se não existir a configuração ele pega o "C:"
 
Agora no Arquivo .INI
 
[UserDrive]
Drive=D:
'HD de trabalho
 
vlu//
 
   
Treze
Pontos: 2843 Pontos: 2843
SÃO VICENTE
SP - BRASIL
ENUNCIADA !
Postada em 06/11/2008 11:57 hs            
Eis minha contribuição
 
em um módulo:
 
'
' funções para escrever e ler arquivos ini
'
Declare Function WritePrivateProfileString Lib "kernel32" Alias _
"WritePrivateProfileStringA" (ByVal lpApplicationName As String, _
ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName _
As String) As Long
'
Declare Function GetPrivateProfileString Lib "kernel32" Alias _
"GetPrivateProfileStringA" (ByVal lpApplicationName As String, _
ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString _
As String, ByVal nSize As Long, ByVal lpFileName As String) As Long
'
Public Ret As String
'
' sub função para gravar um arquivo ini
'
Public Sub WriteINI(FileName As String, Section As String, Key As String, Text As String)
WritePrivateProfileString Section, Key, Text, FileName
End Sub
'
' Função para ler um arquivo ini
'
Public Function ReadINI(FileName As String, Section As String, Key As String)
Ret = Space$(255)
retLen = GetPrivateProfileString(Section, Key, "", Ret, Len(Ret), FileName)
Ret = Left$(Ret, retLen)
ReadINI = Ret
End Function
 
agora no form:
 
modo de gravação sintaxe
 
WriteINI "c:\nome_do_arquivo.ini", "secao", "chave", "conteudo"
 
exemplo feito para sua necessidade
 
no load do form:
 
Private Sub Form_Load()
WriteINI "c:\webconfig.ini", "caminho", "site", "www.google.com.br"
WriteINI "c:\webconfig.ini", "caminho", "ip", "127.0.0.1"
WriteINI "c:\webconfig.ini", "caminho", "porta", "44405;55901"
End Sub
 
parece complexo mas é simples, se o arquivo webconfig.ini não existir ele será criado, se existir, nele serão inseridos os dados.
 
o código acima criará o arquivo ini com esta caracteristica.
 
[caminho]
ip = 127.0.0.1
porta = 44405;55901
 
viu como é fácil criar pelo programa mesmo seu arquivo ini, agora outra forma bem dinâmica seria usando textbox para criar o seu arquivo ini
 
ex:WriteINI TxtArquivo.Text, TxtSecao.Text, TxtChave.Text, TxtString.Text
 
------------------------------------------------------------------------------------------
 
então vimos como criar o arquivo agora veremos como abrir o aqruivo ini para leitura
 
ainda usando seu exemplo faremos desta forma:
 
A leitura é passada como string
 
sintaxe:
 
  caminho = ReadINI("c:\nome_do_arquivo.ini", "secao", "chave")
ex:
 
  Site = ReadINI("c:\webconfig.ini", "caminho", "site")
 
agora baseado em seu código
 
Private Sub Form_Load()
Site = ReadINI("c:\webconfig.ini", "caminho", "site")
IP = ReadINI("c:\webconfig.ini", "caminho", "ip")
Porta() = Split(ReadINI("c:\webconfig.ini", "caminho", "porta"), ";")
Call Winsock1.Connect(IP, Porta(1))
WebBrowser1.Navigate2 (Site)
End Sub
 
pronto a leitura será feita pelo arquivo ini
 
espero ter ajudado.
 
 até
 
TÓPICO EDITADO
 
Paulo Sergio
não registrado
Postada em 06/11/2008 14:02 hs   
Bom amigos agradeco a todos pela ajuda principalmente ao "Treze" pela resposta mais detalhada e a que mais esclareceu minhas duvidas
mais ainda estou com um poblema aki
 
ele me expecifico o caminho a onde ira ta a ini eu queria q ele puxache da pasta raiz a onde o executavel esta explo
 
Site = ReadINI("c:webconfig.ini", "caminho", "site")
ele esta puxando a ini do disco c eu queria q estivese puxando da pasta raiz
 
1º Tentativa
Site = ReadINI("webconfig.ini", "caminho", "site")
2º Tentativa
Site = ReadINI("webconfig.ini", "caminho", "site")
 
nem uma das duas funfarao
estou fazendo algo de errado ?
como tenho q faze para q o exe pegue o ini da pasta raiz  ?
 
 
agora aki tem outro poblema um pouco mais grave
 
quando coloko pra puxa a porta pelo arquivo ini ele da um erro na linha
seguinte " a linha q se tenta conhecta pela porta"
 
Porta() = Split(ReadINI("c:webconfig.ini", "caminho", "porta"), ";")
> Erro nessa aki > Call Winsock1.Connect(IP, Porta(1))
 
Subscript out of range
 
alguem sabe oq posso faze pra sanar esse poblema ?
 
grato des de ja!
     
Paulo Sergio
não registrado
Postada em 06/11/2008 14:06 hs   
aviso o segundo poblema eu resolvi mais o primeiro ainda perciste se alguem sube como posso resolver agradeco
     
Página(s): 1/2      PRÓXIMA »


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2025   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página