Выгрузка базы данных SQLite из файла dll?

733
meiryo

Сначала немного предыстории: мне нужно извлечь базу данных из dll-файла SQLite для моего клиента, который записал мосты с предыдущей версией.

У меня есть 4 файла на рабочем столе:

  • System.data.SQLite.Linq.dll
  • System.data.SQLite.dll
  • SQLite.Interop.dll
  • Payroll.exe

Мне также дают пароль для БД SQLite, который Payroll.exe использует для взаимодействия с базой данных. С этим я могу сделать дамп файла SQL (чтобы я мог работать с чем-то знакомым)?

Основная проблема заключается в том, что у меня нет опыта работы с C #, .NET и DLL-файлами (я знаю, что это означает Dynamic Link Library!)

Я готов поболтать и научиться немного C #, чтобы сделать это.

0
Во-первых, ни один из файлов, которые вы перечислили, не является реальной базой данных, это всего лишь библиотеки, используемые для взаимодействия с реальной БД. Я бы рекомендовал использовать такой инструмент, как [DotPeek] (https://www.jetbrains.com/decompiler/) или [ILSpy] (http://ilspy.net/) или [JustDecompiler] (http: // www. telerik.com/products/decompiler.aspx), чтобы выяснить, что делает ваш Payroll.exe. heavyd 9 лет назад 1
Есть ли вероятность, что база данных «встроена» в «Payroll.exe»? Если это так, значит ли это, что невозможно извлечь? meiryo 9 лет назад 0
Они могли бы встроить первоначальный снимок базы данных, но любые изменения, при которых данные были бы сохранены на диске, скорее всего. Вы также можете использовать [Process Monitor] (http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx) для отслеживания активности диска, чтобы увидеть, можете ли вы найти файл БД. heavyd 9 лет назад 0
Благодарю. Использовал ILSpy, открыл `Payroll.exe`. В одном из файлов я нашел `частную статическую строку ConnectionStr =" Источник данных =. \\ System.Data.SQLite.Linq.dll; Пароль = ***** "`. Кроме этого я не могу ничего найти. Я сообщу о любом прогрессе. meiryo 9 лет назад 0
Похоже, он пытался скрыть БД. Можете ли вы открыть `System.Data.SQLite.Linq.dll` в ILSpy? Если нет, то это, вероятно, ваша база данных. heavyd 9 лет назад 0
РЕДАКТИРОВАТЬ к предыдущему посту: я вижу вызовы DataTable () предыдущего разработчика, просто сложно найти источник. У DotPeek есть возможность перечислить все размеры файлов? Это может дать мне лучшую подсказку. meiryo 9 лет назад 0
Давайте [продолжим это обсуждение в чате] (http://chat.stackexchange.com/rooms/19191/discussion-between-heavyd-and-meiryo). heavyd 9 лет назад 0

0 ответов на вопрос