Fórum Erro na dll dbxmss.dll no DBExpress #2211

26/01/2009

0


  Estou migrando meu software de BDE para DBExpress, ele utiliza o SQL Server 2005 Express, e estou utilizando a DLL dbxmss30.dll para conexão, porém estou tendo problemas quando ocorre qualquer tipo de erro de transação de dados (mesmo que o erro esteja tratado dentro de um try Except), após ocorrer este erro não consigo fazer mais nenhuma transação até que eu feche o sistema e abra novamente, pois em qualquer operação da erro de Access Violation na dbxmss30.dll.
  Segue abaixo imagem do erro de Access Violation apresentado.
Obs.: Esse problema eu não tinha quando estava utilizando o BDE.
Aguardo retorno. Obrigado!!!
Medicator Digitais

Medicator Digitais

Responder

Posts

27/01/2009

Wesley Yamazack

Olá.

 Primeiramente gostaria de saber se a DLL não esta corrompida. Qual versão do Delphi você esta usando ? Onde esta a DLL? Junto com o Executável ?

  Com relação ao Try Except, ele só não funcionaria, se o erro estiver dando em outro lugar que não foi tratado.
  Experimente fazer um novo exemplo, com uma conexão com o SQL server só para testar e ver se o problema esta na migração do seu software. Qualquer coisa envie os seus fontes para que possamos avaliar.


Att,
Wesley Y
Responder

Gostei + 0

29/01/2009

Wesley Yamazack

Bom dia,

  Conseguiram resolver o problema ? Estamos no aguardo, para qualquer esclarecimento, ou duvida.

Att,

Wesley Y
Responder

Gostei + 0

30/01/2009

Medicator Digitais

  Olá Wesley, acredito fielmente que a dll não esteja corrompida, pois em qualquer estação de trabalho ocorre o problema, e cada estação tem sua dll que vem com a instalação do BDS 2006, quanto a versão do Delphi que estou utilizando, é o Delphi 2006.   Quanto ao local em que se encontra a dll, existem máquinas que ela esta na pasta da aplicação(junto com o executável), e em outras máquinas a dll esta na pasta Bin do Delphi, e em ambas o problema se apresenta.   Quanto ao Try Except, todos os lugares em que o erro ocorre estão tratados pelo Try Except, e eu já criei um outro projeto novo para teste da forma que você citou e o erro ocorre igualmente.   Quanto a lhe mandar os fontes, posso lhe mandar, porém acredito que seja mais fácil você criar uma aplicação que tente fazer um inser em uma tabela qualquer, e que esse insert dê um erro de PK por exemplo, depois, sem fechar a aplicação voce tente fazer um update eu um regirto qualquer também (obs.: é claro que tem que fazer tudo isso tratado dentro de um Try Except), isso irá lhe retornar um erro de access violation na dll que eu citei no e-mail anterior, pois é exatamente isso que tenho aqui no meu exemplo, porém estou usando uma conexão com o banco de dados de meu software.    Se precisar, por favor, me retorne que eu lhe envio os fontes.   Obrigado pela atenção.
Responder

Gostei + 0

30/01/2009

Wesley Yamazack

Bom dia,

estava analisando o artigo no site http://dn.codegear.com/article/33468,  observe que o SQLServer só é suportado na versão Beta. Porém entrei em contato com uns amigos, eles disseram que já tiveram problemas com a instalação do Delphi 2006 e SQLSERVER 2000. Sugiro que você tente fazer conexão com outro banco, Oracle,FireBird, outros, para testar se o DBExpress esta funcionando realmente.

Abaixo segue o link da minha DLL

http://www.4shared.com/file/83239493/8b555523/dbxmss30.html


Att,

Wesley Y

Responder

Gostei + 0

30/01/2009

Medicator Digitais

Wesley, minha aplicação utiliza tanto o SQL Server 2005 quanto o 2000, e em ambos ocorre o mesmo problema, fiz testes com o Firebird e funciona normalmente o dbexpress. Obrigado.
Responder

Gostei + 0

31/01/2009

Wesley Yamazack

Olá , Boa noite.
  Se possível tiver como você fazer um exemplo, simples. e me mandar para eu poder testar. Pois a unica explicação seria a instalação do Delphi 2006, mesmo.

Att

Wesley Y
Responder

Gostei + 0

02/02/2009

Wesley Yamazack

Bom dia,
   Faça um ultimo teste, observe os parametros que estão nos seus ClientDataset, SqlQuery, ou outros que você esteja usando. Pois caso exista algum parametro que não estaja correto ele irá dar acess violation.

Att

Wesley Y
Responder

Gostei + 0

02/02/2009

Medicator Digitais

Segue link do arquivo com código fonte e Banco de dados de teste. guerdo retorno. Obrigado!   https://www.devmedia.com.br/discovirtual/
Responder

Gostei + 0

02/02/2009

Wesley Yamazack

Favor, manda o link completo, pois so o disco virtual não adianta, eu naõ tenho acesso

Att,

Wesley Y-
Responder

Gostei + 0

02/02/2009

Medicator Digitais

Responder

Gostei + 0

03/02/2009

Wesley Yamazack

Olá, Boa tarde.

  Eu fiz os testes com o delphi 2007, pois não tenho a versão 2006, gostaria de saber duas coisas.

  1 - Você substitui a dll, pela que te mandei ?
  2 - Você viu os parametros que tem nos ClientDataSet's, Query, Etc ? Viu se todos estão certos ?


Att,
Wesley Y
Responder

Gostei + 0

04/02/2009

Medicator Digitais

 - Fiz o teste com a dll que me enviou sim, e ocorreu o mesmo erro  - as configurações do meu SQLQuery estão ai no exemplo que lhe mandei, acredito que estejam todas corretas, caso tenha algo de errado, por favor, me avise que eu faço os testes aqui.   Eu gostaria de saber se o seu teste do meu exemplo no Delphi 2007 deu certo? pois eu fiz testes usando o Delphi 2009 e apresenta o mesmo erro.   Obrigado!  
Responder

Gostei + 0

04/02/2009

Wesley Yamazack

Olá, boa tarde, o exemplo funcionou perfeitamente, com o delphi 2007. O delphi 2009 também funciona. O delphi 2006 não tem driver para sqlserver 2006. Você esta com algum problema na sua instalação do delphi. Verifique se os delphis que você tem estão atualizados. Pois fiz aqui os exemplo e funcionam.

Att,

Wesley Y
Responder

Gostei + 0

04/02/2009

Medicator Digitais

Olá Wesley, você poderia compilar o exemplo que lhe enviei no seu Delphi 2007 e no 2009 e me enviar os executáveis para eu fazer o teste? Obrigado!
Responder

Gostei + 0

05/02/2009

Wesley Yamazack

Olá, estarei desenvolvendo o exemplo, e lhe retorno logo mais a tarde.

Att,
Wesley Y
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar