/// <summary> /// 获取数据库 /// </summary> private void GetSqliteContext() { string sourceDbPath = Path.Combine(MD5AccountPath, "DB", "MM.sqlite"); var recoveryDb = SqliteRecoveryHelper.DataRecovery(sourceDbPath, @"chalib\IOS_TencentWeiXin_V5.3\MM.sqlite.charactor", RecoveryTables(sourceDbPath), true); MainContext = new SqliteContext(recoveryDb); string sourceFtsPath = Path.Combine(MD5AccountPath, "fts", "fts_message.db"); if (File.Exists(sourceFtsPath)) { try { Dictionary <string, string> dicIndex = new Dictionary <string, string>(); dicIndex.Add("fts_username_id", "UsrName"); FtsContext = new SqliteContext(SqliteRecoveryHelper.DataRecovery( sourceFtsPath, @"chalib\IOS_TencentWeiXin_V5.3\fts_message.db.charactor", _ftsMsgTables + ",fts_username_id", "", "", true, dicIndex)); FtsContext.MergeTables(_ftsMsgTables, _ftsMsgNewTable, "IndexNameId", "c0usernameid"); } catch { FtsContext = null; } } }