Разрешены ли не символы в пароле БД MS Access?

Мне было поручено восстановить утерянный пароль в базе данных MS Access, которая поставляется с программным обеспечением.

Я попробовал инструмент для этого, но возвращаемая строка выглядит испорченной, включая "символы", такие как: †‡Δ и другие, которые не кажутся реальными символами вообще. Однако файл базы данных не поврежден, поскольку прилагаемое к нему программное обеспечение без проблем получает данные из этой базы данных.

Затем я попытался внедрить приложение во время выполнения, после того как оно загрузилось и установило соединение с БД. Приложение использует Enterprise Library, поэтому в моей полезной нагрузке я звоню:

new DatabaseConfigurationView(ConfigurationManager.GetCurrentContext())

и из него мне удалось получить пароль БД, который находится в памяти приложения, и я знаю (из анализа декомпилированного кода), что он используется приложением для успешного извлечения данных из БД. Оказывается, это та же самая искаженная строка, которую дал мне инструмент.

Если я попытаюсь открыть базу данных с помощью приложения Microsoft Access (Office), окно пароля даже не примет строку. Ctrl+v игнорируется, но работает при вставке строки допустимых символов.

Возможно ли, что эта строка, включающая не символы, является действительным паролем, или я что-то здесь упускаю?

Имейте в виду, что у меня нет опыта работы с базами данных Enterprise Library или Access.

1 ответ

Следуя заверениям и советам Panagiotis Kanavos, я написал отдельное приложение для подключения к БД с использованием этого странного пароля, и это сработало. Затем я изменил пароль с:

OleDbCommand command = conn.CreateCommand();
command.CommandText = @"ALTER DATABASE PASSWORD [newpass] [oldpass]";
command.ExecuteNonQuery();

и теперь я могу открыть базу данных с MS Access.

Спасибо за помощь.

Другие вопросы по тегам