Ir para conteúdo
Fórum Script Brasil
  • 0

Erro na distribuição


Gabriel Cabral

Pergunta

Olá pessoas....

Preciso de uma ajuda de amigo agora....

Ocorreram vários problemas ao instalar o programa em outro computador, e até mesmo no computador em que o projeto foi desenvolvido

Vou listar aqui os erros que deram durante a instalação...

__________________________________________________

No início da instalação, avisa que uma dll já existe e que seria melhor eu mantê-la do que substituí-la...então eu mantive

a dll é 'C:\WINDOWS\SYSTEM\MFC40.dll'

__________________________________________________

Continuando a instalação, ocorre o seguinte erro:

An access violation occurred while copying the file:

este erro ocorre para os seguintes arquivos:

C:\WINDOWS\SYSTEM\THREED32.OCX

C:\WINDOWS\SYSTEM\MSHFLXGD.OCX

C:\WINDOWS\SYSTEM\comdlg32.OCX

C:\WINDOWS\SYSTEM\MSBIND.DLL

C:\WINDOWS\SYSTEM\DAO360.DLL

Entre Anular, Repetir e Ignorar, eu ignorei todos eles...

____________________________________________________

No fim da instalação, ocorre mais um erro:

An error occurred while registering the file:

este erro ocorre para este arquivo:

'C:\WINDOWS\SYSTEM\msado25.tlb

____________________________________________________

Mesmo com todos esses erros, a instalação é concluída..

Mas aí quando vou abrir um formulario do programa, dá o erro Run-time error '13': Type Mismatch, mesmo não havendo nenhum erro no BD

Outro erro que ocorre quando clico num botão é o Run-time error '430': Class does not support Automation or does not support expected interface

não sei se isso pode interferir em algo, mas é bom eu lembrar que desenvolvi o projeto em Windows 98 e o BD é Access 97 :(

E estou tentando instalar o programa em Windows 98 que possui Access 2000

______________________________________________________

Espero muito que alguma boa alma possa me ajudar, pois nunca havia feito isso antes

Seria meu presente de natal :D

Muito obrigado

Editado por Gabriel Cabral
Link para o comentário
Compartilhar em outros sites

12 respostass a esta questão

Posts Recomendados

  • 0

Instale o MDAC que acompanha o VB (dê uma procurada por mdac.exe porque não lembro exatamente a pasta onde ele fica, mas fica em "Arquivos de Programas"). Depois instale o MDAC 2.5 e o JET 4.0 que você deverá encontrar no site da Microsoft. Isso deverá resolver o problema e seu programa deverá funcionar.

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0
Instale o MDAC que acompanha o VB (dê uma procurada por mdac.exe porque não lembro exatamente a pasta onde ele fica, mas fica em "Arquivos de Programas"). Depois instale o MDAC 2.5 e o JET 4.0 que você deverá encontrar no site da Microsoft. Isso deverá resolver o problema e seu programa deverá funcionar.

Abraços,

Graymalkin

Isso deve ser instalado no computador onde desenvolvo o projeto ou no computador em que instalo o programa???

Obrigado,

Bom natal

Link para o comentário
Compartilhar em outros sites

  • 0
Onde você vai instalar. No computador de desenvolvimento o programa deverá rodar mesmo com uma instalação incompleta (já que os componentes necessários já existem, do contrário você não conseguiria nem desenvolver).

Abraços,

Graymalkin

Graymalkin, muitíssimo obrigado mesmo

agora tá funcionando que é uma beleza..

Quer dizer...os erros não estão dando mais...

os formularios estão abrindo e a funcionalidade do programa tá boa...

só q está ocorrendo um problema que não sei o por quê...

é que no computador em q desenvolvi, ele funciona perfeitamente...

mas no computador em que instalei, ele está funcionando diferentemente...

Vou explicar...

Tenho um form de busca em que tenho as textbox Código, Nome, Parcelas, Documento e Vencimento

Ao preenche-las e clicar em buscar, o programa avisa se este registro já existe ou não.

Acontece que mesmo existindo, o programa diz que não existe.

o que pode estar ocorrendo??? Pois isso só acontece no computador em que instalei o programa..

Aqui está o código do botao que realiza a busca

Private Sub cmdBuscaConP_Click()

Dim StringSQL As String
Dim cod As Integer

cod = txtBuscaConP_Cod.Text

Set Conex = New ADODB.Connection
Conex.Open StringDeConexao
Set rs = New ADODB.Recordset

StringSQL = "SELECT * FROM FinanWin_ConP "
StringSQL = StringSQL & "WHERE ConP_Cod Like '" & cod & "' And ConP_NomeFantasia Like '" & txtBuscaConP_NomeFantasia & "' And ConP_NumParc Like '" & txtBuscaConP_NumParc & "' And ConP_NumDoc Like '" & txtBuscaConP_NumDoc & "' And ConP_Venc Like '" & txtBuscaConP_Venc & "'"
rs.Open StringSQL, Conex

If rs.EOF Then

MsgBox "Registro não existente.", vbExclamation

txtBuscaConP_Cod.Text = ""
txtBuscaConP_NomeFantasia.Text = ""
txtBuscaConP_NumParc.Text = ""
txtBuscaConP_NumDoc.Text = ""
txtBuscaConP_Venc.Text = ""
txtBuscaConP_Cod.SetFocus

Else

    If txtBuscaConPAux.Text = "BuscaConP" Then
    
Do While Not rs.EOF()
frmContasP.txtConP_Cod.Text = rs("ConP_Cod")
frmContasP.txtConP_CodAux.Text = rs("ConP_Cod")
frmContasP.txtConP_NomeFantasia.Text = rs("ConP_NomeFantasia")
frmContasP.txtConP_NomeFantasiaAux.Text = rs("ConP_NomeFantasia")
frmContasP.txtConP_NumParc.Text = rs("ConP_NumParc")
frmContasP.txtConP_NumParcAux.Text = rs("ConP_NumParc")
frmContasP.txtConP_NumDoc.Text = rs("ConP_NumDoc")
frmContasP.txtConP_NumDocAux.Text = rs("ConP_NumDoc")
frmContasP.txtConP_DataEmissao.Text = rs("ConP_DataEmissao")
frmContasP.txtConP_Venc.Text = rs("ConP_Venc")
frmContasP.txtConP_VencAux.Text = rs("ConP_Venc")
frmContasP.txtConP_Valor.Text = rs("ConP_Valor")
frmContasP.txtConP_Obs.Text = rs("ConP_Obs")
frmContasP.txtConP_Boleto.Text = rs("ConP_Boleto")
If Not rs.BOF Or rs.EOF Then
If Not rs("ConP_DataPgto") = Empty Then
frmContasP.txtConP_DataPgto.Text = rs("ConP_DataPgto")
Else
frmContasP.txtConP_DataPgto.Text = ""
End If
Else
frmContasP.txtConP_DataPgto.Text = ""
End If

If Not rs.BOF Or rs.EOF Then
If Not rs("ConP_ValorPgto") = Empty Then
frmContasP.txtConP_ValorPgto.Text = rs("ConP_ValorPgto")
Else
frmContasP.txtConP_ValorPgto.Text = ""
End If
Else
frmContasP.txtConP_ValorPgto.Text = ""
End If

rs.MoveNext
frmContasP.optSim.SetFocus
Loop

End If

rs.Close
Set rs = Nothing

Unload frmBuscaConP

End If

End Sub

Muito obrigado

Um Feliz Ano Novo a todos

Link para o comentário
Compartilhar em outros sites

  • 0
Se é para ser exatamente igual então nem precisava do LIKE, bastava o sinal de igual ("=") mesmo. Agora, você já conferiu se está realmente procurando um registro que já existe?

Abraços,

Graymalkin

Então, é que quando eu coloco o igual("=") ao invés do LIKE, dá o seguinte erro:

Run-time error '-2147217913(80040e07)':

Tipo de dados incompatível na expressão de critério.

E então, fica marcada em amarelo a seguinte linha:

rs.Open StringSQL, Conex

E eu realmente estou procurando um registro que já existe

Eu até cadastro na hora e depois procuro, pra não ter erro...mas mesmo assim diz que não existe

O estranho é que isso só acontece no computador em que instalei o programa; no computador que desenvolvi ele funciona perfeitamente.

Link para o comentário
Compartilhar em outros sites

  • 0
não....o campo Vencimento era do tipo data

mas agora mudei pra tipo texto e tá dando tudo certo

Caso fosse tipo data, o que eu teria que usar no select???

se vencimento é uma data é melhor dexar como data do q texto. o where, no access, ficaria assim:

Select * From Tabela Where data = #YYYY-MM-DD#

onde YYYY é o ano, MM o mes e DD o dia.

Link para o comentário
Compartilhar em outros sites

  • 0
não....o campo Vencimento era do tipo data

mas agora mudei pra tipo texto e tá dando tudo certo

Caso fosse tipo data, o que eu teria que usar no select???

se vencimento é uma data é melhor dexar como data do q texto. o where, no access, ficaria assim:

Select * From Tabela Where data = #YYYY-MM-DD#
onde YYYY é o ano, MM o mes e DD o dia.
Exatamente. Seu banco poderá ficar muito grande e perder performance se você utilizar somente campos do tipo texto, além de não ser o ideal. Outra opção, se você não quiser formatar a data, é utilizar a função DateValue(). Exemplo:
SELECT * FROM tabela WHERE DateValue(data)=DateValue('dd/MM/yyyy')

Onde no lugar de dd/MM/yyyy você pode concatenar a data digitada no formulário.

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...