нарушение прав доступа в модуле «bds.exe» при подключении к базе данных доступа с помощью «fireda c» - PullRequest
0 голосов
/ 04 февраля 2020

Я провел обширное исследование в поисках решения для этого. Я знаю, что этой ошибки нет в моем коде. Я могу создать новый проект, используя только попытку компонента TFDconnection подключиться к новой базе данных доступа, но я все еще получаю сообщение об ошибке нарушения прав доступа. Я переустановил Rad Studio 10.3, но проблема сохраняется. Любая помощь в устранении неполадок, это будет оценено.

function TODBCConnection.DriverConnect(const AConnString: String;
  ADriverCompletion: SQLUSmallint; AParentWnd: SQLHWnd): String;
var
  iOutConnStrLen: SQLSmallint;
{$IFDEF FireDAC_MONITOR}
  s: String;
  i1, i2: Integer;
{$ENDIF}
begin
{$IFDEF FireDAC_MONITOR}
  if Tracing then begin
    s := AConnString;
    i1 := Pos('PWD=', UpperCase(s));
    if i1 <> 0 then begin
      i2 := Pos(';', s, i1);
      if i2 = 0 then
        i2 := Length(s) + 1;
      Inc(i1, 4);
      while i1 < i2 do begin
        s[i1] := '*';
        Inc(i1);
      end;
    end;
    Trace(ekVendor, esProgress, 'SQLDriverConnect', ['szConnStr', s]);
  end;
{$ENDIF}
  SetLength(Result, C_RETURNED_STRING_MAXLEN);
  FillChar(Result[1], C_RETURNED_STRING_MAXLEN * SizeOf(Char), 0);
  iOutConnStrLen := 0;

-> Check(Lib.SQLDriverConnect(FHandle, AParentWnd, PSQLChar(AConnString), 
SQL_NTS,
    PSQLChar(Result), C_RETURNED_STRING_MAXLEN, iOutConnStrLen, 
ADriverCompletion));
  FConnected := True;
  AfterConnect;
  ODBCSetLength(Result, iOutConnStrLen);
end;

Исключение указывает на строку, показанную после -> «Я извиняюсь, я не уверен, как правильно разместить строку ошибки»

1 Ответ

1 голос
/ 04 февраля 2020

Я нашел решение. Проблема была с драйвером MSAccess Официальный скачать здесь -> ссылка После переустановки я могу подключиться снова без ошибки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...