COMO ABRIR DATABASE EM OUTRO PC APOS INSTALAR

DOENTE 19/10/2011 18:25:40
#387115
Criei um programa com banco de dados e quando instalo no computador do cliente dá erro porque o caminho do banco de dados não é o mesmo que no meu computador. O que devo fazer para resolver este problema??
JÁ COLOQUEI O CAMINHO COMO app.path E MESMO ASSIM DEU PROBLEMA.
Já criei o instalador com o vb e depois com o mep instaler e nada até agora.

CHARLESTON10 19/10/2011 19:14:03
#387118
Resposta escolhida
Já passei por esse problema, aconselho você usar um Arquivo de texto para guardar o caminho do banco de dados, esse método é utilizado para sistemas que funcionam
em rede, mas vai resolver seu problema, não é um bicho de sete cabeças é bem simples.

Você deve criar um arquivo dentro da pasta do seu programa,
com isso você cria um método no seu software que irá buscar o caminho do seu banco de dados que está no arquivo de texto.
Simples assim...

Primeiro Passo: Você cria um arquivo em bloco de notas com a extensão .INI
Segundo Passo: Você deve criar um modulo que irá reconhecer o arquivo de texto
Terceiro Passo: Você cria o método dentro da conexão.
Quarto Passo: Executar.

Primeiro: (Crie um arquivo texto com extensão .INI)

Escreva isso dentro dele:

[[txt-color=#0000f0]Geral]
Caminho=X:\Teste    este.mdb[/txt-color]


Segundo: (Codificação do Modulo)


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 Function ReadINI(Section As String, Key As String, FileName As String)
[ô]Filename=nome do arquivo ini [ô](arquivo de texto)
[ô]section=O que esta entre []
[ô]key=nome do que se encontra antes do sinal de igual

Dim retlen As String
Dim Ret As String

Ret = String$(255, 0)
retlen = GetPrivateProfileString(Section, Key, [Ô][Ô], Ret, Len(Ret), FileName)
Ret = Left$(Ret, retlen)
ReadINI = Ret

End Function


Terceiro Passo

[ô]Colque dentro do metódo de conexão de banco de dados

Caminho = ReadINI([Ô]Geral[Ô], [Ô]Caminho[Ô], App.Path & [Ô]\Config.ini[Ô])
[ô]Caminho = App.Path & [Ô]\Clientes.mdb[Ô]

On Error GoTo Finalizar

cnSQL.Open [Ô]Provider = Microsoft.Jet.OLEDB.4.0;Data Source =[Ô] & Caminho & [Ô];Jet OLEDB:databasePassword=MasterDB[Ô]


Qualquer dúvida.
http://www.macoratti.net/acc_comp.htm


CHARLESTON10 19/10/2011 19:24:41
#387121
Uma Observação -

Caso der alguma erro no caminho do banco de dados - com essa configuração, é possível alterar o caminho quando quiser, sem precisar entrar no código fonte do programa.
Alterando assim, o caminho dentro do arquivo *.INI
MARCELO.TREZE 19/10/2011 20:07:16
#387126
olha solução do colega CHARLESTON é a melhor, pois é a maneira que utilizo, porém se deseja algo mais simples veja este tópico que acabou de discutir isto:

http://www.vbmania.com.br/pages/index.php?varModulo=Forum&varMethod=abrir&varID=386598&varPagina=1
FEDERHEN 20/10/2011 08:10:16
#387143
Eu também uso a solução proposta pelo colega CHARLESTON e funciona muito bem
DOENTE 20/10/2011 10:06:09
#387160
Não acredito que achei a solução aqui no Brasil, já baixei tudo o que vocês imaginam de livros e apostilas sobre vb e bd comprei alguns no ml e video-aulas. Um livro que baixei e estou traduzindo é o Beginning Visual Basic 6 Database Programming do John Connell. Muito bom por sinal. só que traduzo no google. e ainda estou no capítulo 5 dos 16. ESTÁ EM INGLES.

Vou seguir o conselho de quem manja do assunto depois postarie o resultado. Obrigado a todos.

JEOVÁ é O MEU PASTOR, NADA ME FALTARÁ
CHARLESTON10 20/10/2011 12:42:37
#387171
DOENTE - Funcionou a proposta que te dei ?

Caso sim,
encerre o tópico

Qualquer dúvida, estamos a disposição,

Abraço
XXXANGELSXXX 21/10/2011 20:33:35
#387374
Exemplo na pratica.

  
http://www.vbmania.com.br/pages/index.php?varModulo=Detalhe&varID=8924
DOENTE 26/10/2011 13:32:52
#387809
Estou colocando esses exemplos em prática e ainda estou tendo problema. Acho que o problema está comigo.

Baixei o livro em inglês com o seguinte título.

Visual_Basic_6_Database_How-To.pdf

Neste link:

http://www.4shared.com/document/j03kS3H6/visual_basic_6_database_how-to.html.

Acho que eu preciso ler este livro na íntegra para entender melhor esse tal de APP.PATH.

Agradeço a todos pela colaboração e sucesso a todos em seus empreendimento
Tópico encerrado , respostas não são mais permitidas