1. Пытаемся подключиться к БД. Если ошибка - то явно проблемы с файлом.
2. Делаем запрос нужного поля из нужной таблицы. Если ошибка - ну значит не туда попали.
3. проверяем полученное значение. Не то - значит неправильная БД.
Код:
function OpenDB(AFileName : String);
begin
Try
Try
ADOConnection.DBName := AFileName; // Здесь типа правим строку подключения, сорри, delphi под рукой нет
ADOConnection.Open;
ADOQuery.SQL.Text := 'SELECT INIT FROM INIT';
ADOQuery.Open;
If ADOQuery.RecordCount = 0 Then
Raise Exception.Create('No records.');
If ADOQuery.FieldbyName('INIT').AsInteger <> 101 Then // проверяемое значение
Raise Exception.Create('Wrong key value.');
Result := True;
Finally
ADOQuery.Close;
End;
Except
If ADOConnection.Connected then ADOConnection.close;
Result := False;
End;
end;