Приветствую всех, в последнее время пришлось работать с читами для игр. За это время я написал для удобства не сколько утилит. Одна из них это BaseAdress которая при выборе процесса показывает его базовый адрес. Я не буду сейчас углубляться в терминологии для чего он нужен, но в таких программах как Cheat Engine без моей утилиты […]
Как получить список всех модулей? C#
Приветствую всех, последние две недели я помогал в разработке чита для одной из популярных игр на Unity. Но админы использовали «античит» программы для получения всех dll игры, и конечно отображалась и наша dll с читом которая была заинжекчена. Одна из моих задач была обойти античит и скрыть заинжектированную dll. Я хоть и сталкивался в работе […]
Как создать кнопку любой формы?
Приветствую всех, конечно мало кто уже использует winform однако, студенты и начинающие обычно начинают именно с него. И классическая форма кнопок печалит. Рассмотрим пример, для этого мы создадим кнопку на форме и используем код ниже:
1 2 |
//добавляем необходимое простанство имен: using System.Drawing.Drawing2D; |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
void OvalForm(Button btn) { GraphicsPath gp = new GraphicsPath(); Graphics g = CreateGraphics(); //Создаем новый прямоуголник с размерами кнопки Rectangle rect = btn.ClientRectangle; //уменьшаем размеры прямоуголника rect.Inflate(-3, -3); //создаем эллипс gp.AddEllipse(rect); btn.Region = new Region(gp); //рисуем рамку для овальной кнопки g.DrawEllipse(new Pen(Color.Black, 1), btn.Left + 1, btn.Top + 1, btn.Width - 3, btn.Height - 3); //высвобождаем память g.Dispose(); } |
Теперь создадим обработчик события для кнопки и поместим в него следующий код:
1 2 3 4 |
private void button1_Click(object sender, EventArgs e) { OvalForm(button1); } |
Если нажать на кнопку мы […]
Агрегация в C#
Приветствую всех, сегодня я затрону тему об агрегации, что это такое и рассмотрим пример использования. Применение, суть его в том что бы расширить функциональность имеющего класса, будь он вашим или чужим, знаетели вы он нем что то или нет. Агрегация позволит избежать избыточного кода и работать с методами и классами. Агрегация и композиция очень близкие […]
Как сохранить данные программы с помощью файла *.ini C#
Приветствую все! Сегодня я покажу еще один вариант сохранения настроек и данных в фаил ini, данный метод хоть и уходит в небытие, однако до сих пор используется в разработке ПО. По сути его вытеснил XML так, как по принципу работы он очень его напоминает. Если посмотреть следующий пример, то вы поймете то о чем я […]