Access violation at address 1899D8F0 in module FireDACCommon

12/08/2019

9

Ola pessoal!!

Estou tendo dificuldade de executar o modulo das Tabelas no Delphi, sempre que tento conectar o banco de dados
aparece este erro abaixo:

Access violation at address 1899D8F0 in module FireDACCommon260.dpl. Read of address 00000CEA.

Estou usando o Delphi 10.3.2 RIO

Usando o Banco de Dados MySQL
Servidor Local Xampp.

Já Instalei o Delphi Varias Vezes mas não consigo desenvolver nada que esteja usando o banco de dados MySQL.
Alguém está com este mesmo problema?? Gostaria de um apoio de alguém aqui no forum. Desde já agradeço.
Responder

Posts

15/08/2019

Fernando Ito

Olá José Soares,

Poderia nos dar mais informações de como você está programando este módulo das Tabelas para que possamos lhe ajudar?

Você está usando unit DataModule? Está instanciando ela antes de fazer a consulta? verifica o project options se for o caso a ordenação dos creates, pode ser pelo Project View Source também.

Quais parâmetros você preencheu na conexão do Firedac? e quais componentes você está usando.


Um abraço,
ITO
Responder

15/08/2019

José Soares

Olá José Soares,

Poderia nos dar mais informações de como você está programando este módulo das Tabelas para que possamos lhe ajudar?

Você está usando unit DataModule? Está instanciando ela antes de fazer a consulta? verifica o project options se for o caso a ordenação dos creates, pode ser pelo Project View Source também.

Quais parâmetros você preencheu na conexão do Firedac? e quais componentes você está usando.


Um abraço,
ITO

===================================================================================================
Bom!
Estou usando um modulo com os seguinte componentes:

- FDConnect: como Conexao
- FDPhysMySQLDriverLink1: como MySQLDriverLink

- TFDTable
- TFDQyery
- TDataSource

A TFDQyery como: QryTabFuncionarios
A TFDTable como: TabFuncionarios
A TDataSource como: DsQryTabFuncionarios ligado com a TFDQryTabFuncionarios

O MySQLDriverLink ta ligado pelo VendorLib com a libMysql.dll dentro da pasta C:\\SystemaPDV\\Win32\\Debug\\lib\\libMysql.dll

Ate ai tudo bem, eu consigo ativar a conexao, porem quando vou ativar as tabela seja a tabFuncionarios ou QryTabFuncionarios
aparece a mensagem de erro: Access violation at address 160FD8D8 in module FireDACCommon260.dpl. Read of address 00000CEA.

DETALHES DO ERRO:
======================
[160FD8D8]{FireDACCommon260.bpl} FireDAC.Stan.Util.FDAnsiStrLen (Line 2407, "FireDAC.Stan.Util.pas" + 4) + $0
[500B39B9]{rtl260.bpl } System.Variants.@VarClr (Line 905, "System.Variants.pas" + 1) + $0
[500692D3]{rtl260.bpl } System.TInterfacedObject.QueryInterface (Line 39286, "System.pas" + 1) + $8
[160FB993]{FireDACCommon260.bpl} FireDAC.Stan.Util.TFDEncoder.Decode (Line 1463, "FireDAC.Stan.Util.pas" + 17) + $2
[160FBC1C]{FireDACCommon260.bpl} FireDAC.Stan.Util.TFDEncoder.Decode (Line 1550, "FireDAC.Stan.Util.pas" + 5) + $9
[15222ECC]{FireDACMySQLDriver260.bpl} FireDAC.Phys.MySQLWrapper.TMySQLSession.GetDB (Line 1563, "FireDAC.Phys.MySQLWrapper.pas" + 23) + $B
[1522E0E5]{FireDACMySQLDriver260.bpl} FireDAC.Phys.MySQL.TFDPhysMySQLConnection.InternalGetCurrentCatalog (Line 807, "FireDAC.Phys.MySQL.pas" + 2) + $4
[15B403FD]{FireDACCommonDriver260.bpl} FireDAC.Phys.TFDPhysConnection.GetCurrentCatalog (Line 3793, "FireDAC.Phys.pas" + 6) + $7
[15B83741]{FireDACCommonDriver260.bpl} FireDAC.Phys.MySQLMeta.TFDPhysMySQLCommandGenerator.Create (Line 648, "FireDAC.Phys.MySQLMeta.pas" + 2) + $1E
[1522CD51]{FireDACMySQLDriver260.bpl} FireDAC.Phys.MySQL.TFDPhysMySQLConnection.InternalCreateCommandGenerator (Line 470, "FireDAC.Phys.MySQL.pas" + 1) + $9
[15B3D732]{FireDACCommonDriver260.bpl} FireDAC.Phys.TFDPhysConnection.CreateCommandGenerator (Line 2787, "FireDAC.Phys.pas" + 1) + $6
[15B48822]{FireDACCommonDriver260.bpl} FireDAC.Phys.TFDPhysCommand.CheckMetaAvailability (Line 6999, "FireDAC.Phys.pas" + 11) + $1E
[15B480F0]{FireDACCommonDriver260.bpl} FireDAC.Phys.TFDPhysCommand.Prepare (Line 6858, "FireDAC.Phys.pas" + 32) + $F
[50067E88]{rtl260.bpl } System.@IntfClear (Line 38150, "System.pas" + 10) + $0
[15B554CF]{FireDACCommonDriver260.bpl} FireDAC.Phys.Meta.TFDPhysConnectionMetadata.FetchToCache (Line 1649, "FireDAC.Phys.Meta.pas" + 11) + $D
[15B5636D]{FireDACCommonDriver260.bpl} FireDAC.Phys.Meta.TFDPhysConnectionMetadata.GetTablePrimaryKeyFields (Line 1880, "FireDAC.Phys.Meta.pas" + 7) + $3
[15C3E137]{FireDAC260.bpl} FireDAC.Comp.Client.TFDTable.SetupTable (Line 11786, "FireDAC.Comp.Client.pas" + 14) + $23
[15C3E485]{FireDAC260.bpl} FireDAC.Comp.Client.TFDTable.OpenCursor (Line 11830, "FireDAC.Comp.Client.pas" + 1) + $2
[514114F9]{dbrtl260.bpl} Data.DB.TDataSet.SetActive (Line 12601, "Data.DB.pas" + 12) + $7
[15BFE227]{FireDAC260.bpl} FireDAC.Comp.DataSet.TFDDataSet.SetActive (Line 1610, "FireDAC.Comp.DataSet.pas" + 7) + $2
[50126302]{rtl260.bpl } System.TypInfo.SetOrdProp (Line 2880, "System.TypInfo.pas" + 39) + $0
[20FEE1FE]{designide260.bpl} DesignEditors.TPropertyEditor.SetOrdValue (Line 840, "DesignEditors.pas" + 2) + $E
[21046791]{designide260.bpl} VCLEditors.TBooleanProperty.MouseUp (Line 1930, "VCLEditors.pas" + 5) + $10
[21214C2F]{vclide260.bpl} PropBox.TCustomPropListBox.ItemMouseUp (Line 1778, "PropBox.pas" + 17) + $1B
[21214E6F]{vclide260.bpl} PropBox.TCustomPropListBox.MouseUp (Line 1858, "PropBox.pas" + 1) + $D
[50D05BAC]{vcl260.bpl } Vcl.Controls.TControl.DoMouseUp (Line 7664, "Vcl.Controls.pas" + 2) + $25
[50D05C3A]{vcl260.bpl } Vcl.Controls.TControl.WMLButtonUp (Line 7677, "Vcl.Controls.pas" + 9) + $6
[2121B118]{vclide260.bpl} IDEInspListBox.TInspListBox.WMLButtonUp (Line 1702, "IDEInspListBox.pas" + 3) + $4
[50D05222]{vcl260.bpl } Vcl.Controls.TControl.WndProc (Line 7420, "Vcl.Controls.pas" + 91) + $6
[50D0CC79]{vcl260.bpl } Vcl.Controls.TWinControl.Update (Line 12330, "Vcl.Controls.pas" + 1) + $12
[50D0CC91]{vcl260.bpl } Vcl.Controls.TWinControl.Repaint (Line 12336, "Vcl.Controls.pas" + 2) + $4
[0D131CD5]{themeloader260.bpl} Idetheme.Vclstylehooks.TScrollingIDEStyleHook.PaintScroll + $21
[0D13222F]{themeloader260.bpl} Idetheme.Vclstylehooks.TScrollingIDEStyleHook.WMLButtonUp + $1B3
[50067E88]{rtl260.bpl } System.@IntfClear (Line 38150, "System.pas" + 10) + $0
[5005FE07]{rtl260.bpl } System.TObject.Dispatch (Line 18332, "System.pas" + 11) + $0
[0D128E3E]{themeloader260.bpl} Idetheme.Vclstylehooks.TIDEStyleHook.WndProc + $7A
[0D12976C]{themeloader260.bpl} Idetheme.Vclstylehooks.TMouseTrackControlIDEStyleHook.WndProc + $0
[0D132EF4]{themeloader260.bpl} Idetheme.Vclstylehooks.TScrollingIDEStyleHook.WndProc + $0
[50067E88]{rtl260.bpl } System.@IntfClear (Line 38150, "System.pas" + 10) + $0
[0D1288F7]{themeloader260.bpl} Idetheme.Vclstylehooks.TIDEStyleHook.HandleMessage + $B7
[50067E88]{rtl260.bpl } System.@IntfClear (Line 38150, "System.pas" + 10) + $0
[50D09493]{vcl260.bpl } Vcl.Controls.TWinControl.IsControlMouseMsg (Line 10033, "Vcl.Controls.pas" + 1) + $9
[0D161AB2]{themeloader260.bpl} Idetheme.Stylemanager.TIDEThemeStyleEngine.UnRegisterSysStyleHook + $106
[50D09CD7]{vcl260.bpl } Vcl.Controls.TWinControl.WndProc (Line 10278, "Vcl.Controls.pas" + 166) + $6
[50D2E705]{vcl260.bpl } Vcl.StdCtrls.TCustomListBox.WndProc (Line 7266, "Vcl.StdCtrls.pas" + 55) + $5
[1A328C05]{cxLibraryRS26.bpl} Cxcontainer. + $0
[50D092A4]{vcl260.bpl } Vcl.Controls.TWinControl.MainWndProc (Line 9977, "Vcl.Controls.pas" + 3) + $6
[501745B0]{rtl260.bpl } System.Classes.CalcJmpOffset (Line 17562, "System.Classes.pas" + 0) + $4
[50E5E877]{vcl260.bpl } Vcl.Forms.TApplication.ProcessMessage (Line 10724, "Vcl.Forms.pas" + 23) + $1
[50E5E8BA]{vcl260.bpl } Vcl.Forms.TApplication.HandleMessage (Line 10754, "Vcl.Forms.pas" + 1) + $4
[50E5EBED]{vcl260.bpl } Vcl.Forms.TApplication.Run (Line 10892, "Vcl.Forms.pas" + 26) + $3
[00518002]{bds.exe } bds.bds (Line 214, "" + 7) + $7


Quando tento fazer a ligação da Tabela nas propriedades não aparece as tabelas do banco de dados.


Nas propriedades:
-------------------
- TableName: syspdv.funcionarios
- TableName: syspdv.fornecedores
- TableName: syspdv.cargos
- TableName: syspdv.usuarios...etc...
Antes aparecia a lista das tabelas mas agora não aparece mas, se digito syspdv.funcionarios, não dá nenhum erro, mas se tento ativar
o erro aparece.

Estou usando o Delphi 10.3.1 Rio, estava usando o 10.3.2 Rio mas ainda tem bugs nele e voltei a usar o 10.3.1, pelo menos tá mas estável.
tive que parar de prossegui no desenvolvimento de um sistema PDV por conta desta ligação das tabelas que não consigo ativar para se comunicar o o banco de dados.
Já recorri em vários forum porem nenhum conseguiu descobri o porque deste erro, formatei minha maquina varias vezes, instalando o Delphi sem nenhum componente adicional
só com os básicos mesmo, mas mesmo assim to com este problema, já ate mandei um e-mail para a Embarcadero, mas ate agora na tive resposta.
Responder

19/08/2019

Ricardo Araujo

Bom dia,


Já tentou colocar a libMysql.dll no caminho do Executável do seu sistema, e testa?

Responder

19/08/2019

José Soares

Bom dia,


Já tentou colocar a libMysql.dll no caminho do Executável do seu sistema, e testa?



Eu abro o Delphi coloco um form principal, coloco um modulo e os componentes:

- FDConnect: como Conexao
- FDPhysMySQLDriverLink1: como MySQLDriverLink

- TFDTable (TabFuncionarios)
- TFDQyery (QryTabFuncionarios)
- TDataSource (DsQryTabFuncionarios)

Faço a lligação do MySQLDriverLink com a libMysql.dll, ativo o FDConnect: como Conexao.

no OnCreator do Modulo eu coloco:
========================================================
Conexao.Params.Database := 'sysPDV';
Conexao.Params.UserName := 'root';
Conexao.Params.Password := ' ' ;

MySQLDriverLink.VendorLib := GetCurrentDir + '\\Debug\\lib\\libmySQL.dll' ;

Conexao.Connected := True;
==============================================================

Já tentei de varias formas solucionar este problema, mas nem a Embargadero soube explicar o porque deste erro que dá:
Access violation at address 160FD8D8 in module FireDACCommon260.dpl. Read of address 00000CEA.

Instalei o Delphi Community achando que iria solucionar mas nada feito. se eu tivesse usando o Delphi pirata, poderia ate achar que fosse por conta disso
mas não to usando, inclusive comprei a licença do Delphi 10.3.2 com desconto de 15% no valor de 23.435,00.
Mas joguei dinheiro fora, porque estou com este problema que nem a Embargadero soube solucionar.

Responder
Olá,
Tive o mesmo problema e a solução foi eu substituir o arquivo: libmySQL.dll.
-> Fecha o RAD Studio 10.3;
-> Vá até a pasta System32 caso esteja usando o Windows 32 bits
C:\\\\Windows\\\\System32 e encontre o arquivo: libmySQL.dll e remova-o;
-> Se o Windows for de 64 bits siga o caminho:
C:\\\\Windows\\\\SysWOW64 e encontre o arquivo: libmySQL.dll e remova-o;

Feito isso, segue abaixo o arquivo que estou deixando no link. Baixe e coloque na mesma pasta do arquivo que você deletou.

https://1drv.ms/u/s!AkOf9dg2rQqUhXj7DECVrLxBAQzV?e=OibrYs

Abra o RAD Studio 10.3 e faça o teste.

Comigo está funcionando blz, espero que eu tenha ajudado.
Responder

12/10/2019

José Soares

Olá,
Tive o mesmo problema e a solução foi eu substituir o arquivo: libmySQL.dll.
-> Fecha o RAD Studio 10.3;
-> Vá até a pasta System32 caso esteja usando o Windows 32 bits
C:\\\\\\\\Windows\\\\\\\\System32 e encontre o arquivo: libmySQL.dll e remova-o;
-> Se o Windows for de 64 bits siga o caminho:
C:\\\\\\\\Windows\\\\\\\\SysWOW64 e encontre o arquivo: libmySQL.dll e remova-o;

Feito isso, segue abaixo o arquivo que estou deixando no link. Baixe e coloque na mesma pasta do arquivo que você deletou.

https://1drv.ms/u/s!AkOf9dg2rQqUhXj7DECVrLxBAQzV?e=OibrYs

Abra o RAD Studio 10.3 e faça o teste.

Comigo está funcionando blz, espero que eu tenha ajudado.

=====================================================================
Ola eu fiz a procura nas duas pastas que você falou, porem não encontrei nenhum arquivo libmySQL.dll nas pastas indicadas
Responder
×
+1 DevUP
Acesso diário, +1 DevUP
Parabéns, você está investindo na sua carreira