Em alguns computadores aqui está acontecendo erro de access violation ao chamar o CreateDataSet do cdsIdentificacao dentro do método create da classe.
O erro acontece no momento que abro a tela que tem os componentes de nota fiscal do ACBr.
Abaixo segue um trecho do código e a linha onde o erro acontece.
Se alguém puder me ajudar .
Erro:
Project erp.exe raised exception class $C0000005 with message 'access violation at 0x0270e8d7: read of address 0x00000000'.
Código:
constructor TACBrNFeFRClass.Create(AOwner: TComponent);
begin
...
// cdsIdentificacao
if not Assigned(cdsIdentificacao) then
begin
cdsIdentificacao := TClientDataSet.Create(AOwner);
FfrxIdentificacao := TfrxDBDataset.Create(AOwner);
with FfrxIdentificacao do
begin
DataSet := cdsIdentificacao;
OpenDataSource := False;
Enabled := False;
UserName := 'Identificacao';
end;
with cdsIdentificacao do
begin
FieldDefs.Add('Id', ftString, 44);
FieldDefs.Add('Versao', ftFloat);
FieldDefs.Add('Chave', ftString, 60);
FieldDefs.Add('cUF', ftString, 2);
FieldDefs.Add('cNF', ftString, 9);
FieldDefs.Add('NatOp', ftString, 60);
FieldDefs.Add('IndPag', ftString, 1);
FieldDefs.Add('Mod_', ftString, 2);
FieldDefs.Add('Serie', ftString, 3);
FieldDefs.Add('NNF', ftString, 11);
FieldDefs.Add('DEmi', ftString, 19);
FieldDefs.Add('DSaiEnt', ftString, 10);
FieldDefs.Add('TpNF', ftString, 1);
FieldDefs.Add('CMunFG', ftString, 7);
FieldDefs.Add('TpImp', ftString, 1);
FieldDefs.Add('TpEmis', ftString, 1);
FieldDefs.Add('CDV', ftString, 1);
FieldDefs.Add('TpAmb', ftString, 1);
FieldDefs.Add('FinNFe', ftString, 1);
FieldDefs.Add('ProcEmi', ftString, 1);
FieldDefs.Add('VerProc', ftString, 6);
FieldDefs.Add('HoraSaida', ftString, 10);
FieldDefs.Add('MensagemFiscal', ftString, 200);
FieldDefs.Add('URL', ftString, 1000);
// erro na linha abaixo
CreateDataSet;
end;
end;
...
end;