- Katılım
- 7 Ocak 2019
- Mesajlar
- 1.944
- Çözümler
- 15
Daha fazla
- Cinsiyet
- Erkek
Bunun sebebi ne olabilir? Programımın tek yaptığı şey log.txt dosyalarını okuyup hile varsa hilenin adını vermektir.
Program bu:
Virüs korumalarının raporları:
Kaynak kod 1:
Kaynak kod2.
Kaynak kod 3
Program bu:
Virüs korumalarının raporları:
Kod:
using System;
using System.Collections.Generic;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text.RegularExpressions;
using System.Windows.Forms;
namespace JigmonTR_Hile_Kontrol_Araci
{
public partial class MainForm : Form.
{
private Form2 form2; // Form2'nin örneği.
private Form3 form3;
private string selectedFilePath;
private readonly List<string> cheatKeywords = new List<string> { // Popüler Hile Client'ları.
"Wurst", "LiquidBounce", "Baritone", "Impact", "Shiro", "Phobos", "Kami",
"Sigma", "Meteor", "Future ", "Pandora", "Newton", "Matrix", "Doomsday", "Doomday"}; // Örnek hile anahtar kelimeleri.
public MainForm()
{
InitializeComponent();
form2 = new Form2(this); // Form2'yi oluştururken MainForm referansını geçir.
this.Load += MainForm_Load; // Form yükleme olayına metodu bağla.
this.LocationChanged += MainForm_LocationChanged; // Konum değişikliklerini takip et.
this.FormClosing += MainForm_FormClosing; // Form kapanırken Form2'yi kapat.
this.Resize += MainForm_Resize; // Form boyutu değişimini takip et.
this.Activated += MainForm_Activated; // Form etkinliğini takip et.
this.FormBorderStyle = FormBorderStyle.FixedSingle; // Boyutlandırmayı kapat.
this.MaximizeBox = false; // Tam ekran yapmayı engelle.
}
private void MainForm_Load(object sender, EventArgs e)
{
form2.StartPosition = FormStartPosition.Manual;
form2.Size = new Size(390, 470); // Form2 boyutlarını sabitle.
// Form1 ve Form2'nin konumlarını ayarla.
this.StartPosition = FormStartPosition.Manual;
this.Location = new Point((Screen.PrimaryScreen.WorkingArea.Width - this.Width - form2.Width) / 2 - 50, (Screen.PrimaryScreen.WorkingArea.Height - this.Height) / 2);
form2.Location = new Point(this.Location.X + this.Width - 7, this.Location.Y + 6); // Form2'yi Form1'in daha yakınında ve biraz aşağıda aç.
form2.Hide(); // Form2'yi başlangıçta gizle.
}
private void MainForm_LocationChanged(object sender, EventArgs e)
{
form2.Location = new Point(this.Location.X + this.Width - 7, this.Location.Y + 6); // Form2'yi Form1'in daha yakınında ve biraz aşağıda tut.
}
private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
{
form2.Close(); // Form2'yi kapat.
}
private void btnDosyaSecVeKontrolEt_Click(object sender, EventArgs e)
{
if (openFileDialog.ShowDialog() == DialogResult.OK)
{
selectedFilePath = openFileDialog.FileName;
lblDosyaDurumu.Text = $"Seçilen Dosya: {Path.GetFileName(selectedFilePath)}";
lblDosyaDurumu.ForeColor = Color.LightGreen;
}
}
private void btnTara_Click(object sender, EventArgs e)
{
txtLogIcerik.Clear();
if (form2 == null)
return;
if (string.IsNullOrEmpty(selectedFilePath))
{
MessageBox.Show("Lutfe n bir dosya seçin.");
return;
}
var selectedInterval = form2.GetSelectedInterval(); // Form2'den seçilen zaman aralığını al.
if (selectedInterval == 0)
{
MessageBox.Show("Lutfe n bir zaman aralığı seçin.");
return;
}
var logLines = File.ReadAllLines(selectedFilePath);
var cheatOccurrences = new Dictionary<string, List<int>>();
// Hileleri kontrol et.
for (int i = 0; i < logLines.Length; i++)
{
var line = logLines[i];
foreach (var cheat in cheatKeywords)
{
if (line.IndexOf(cheat, StringComparison.OrdinalIgnoreCase) >= 0)
{
if (!cheatOccurrences.ContainsKey(cheat))
{
cheatOccurrences[cheat] = new List<int>();
}
cheatOccurrences[cheat].Add(i + 1); // Satır numarasını 1 tabanlı olarak ekle.
}
}
}
// Hileleri yazdır.
foreach (var cheat in cheatOccurrences.Keys)
{
var lineNumbers = string.Join(", ", cheatOccurrences[cheat]);
txtLogIcerik.SelectionStart = txtLogIcerik.TextLength;
txtLogIcerik.SelectionLength = 0;
txtLogIcerik.SelectionColor = Color.Red;
txtLogIcerik.AppendText($"Hile bulundu: {cheat} - Satırlar {lineNumbers}{Environment.NewLine}");
txtLogIcerik.SelectionColor = txtLogIcerik.ForeColor; // Rengi eski haline getir.
}
if (!cheatOccurrences.Any())
{
// Hile bulunamadıysa zaman aralığını kontrol et.
var result = CheckInterval(logLines, selectedInterval);
txtLogIcerik.AppendText(result + Environment.NewLine);
}
}
private string CheckInterval(string[] logLines, int interval)
{
var result = string.Empty;
var previousTime = DateTime.MinValue;
var fileChanged = false;
foreach (var line in logLines)
{
var match = Regex.Match(line, @"\[(\d{2}):(\d{2}):(\d{2})\]");
if (match.Success)
{
var currentTime = DateTime.ParseExact($"{match.Groups[1].Value}:{match.Groups[2].Value}:{match.Groups[3].Value}", "HH:mm:ss", null);
if (previousTime != DateTime.MinValue)
{
var diff = (currentTime - previousTime).TotalMinutes;
if (diff > interval)
{
txtLogIcerik.SelectionColor = Color.Red;
result = $"{Path.GetFileName(selectedFilePath)} dosya değiştirilmiş (şüpheli){Environment.NewLine}";
fileChanged = true;
break;
}
}
previousTime = currentTime;
}
}
if (!fileChanged)
{
txtLogIcerik.SelectionColor = Color.Green;
result = $"{Path.GetFileName(selectedFilePath)} dosyası temiz.(hile değil){Environment.NewLine}";
}
return result;
}
private void checkBoxShowForm2_CheckedChanged(object sender, EventArgs e)
{
if (checkBoxShowForm2.Checked)
{
form2.Show();
}
else.
{
form2.Hide();
}
}
private void MainForm_Resize(object sender, EventArgs e)
{
if (this.WindowState == FormWindowState.Minimized)
{
form2.Hide();
}
}
private void MainForm_Activated(object sender, EventArgs e)
{
if (checkBoxShowForm2.Checked)
{
form2.Show();
}
else.
{
form2.Hide();
}
}
private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
// Bağlantı URL'si.
string url = "https://discord . gg/9BMgSqcTEV";
// Varsayılan tarayıcıda bağlantıyı aç.
System.Diagnostics.Process.Start(url);
}
private void boxDiscord_Click(object sender, EventArgs e)
{
// Bağlantı URL'si.
string url = "https://discord . gg/9BMgSqcTEV";
// Varsayılan tarayıcıda bağlantıyı aç.
System.Diagnostics.Process.Start(url);
}
private void boxİnstagram_Click(object sender, EventArgs e)
{
// Bağlantı URL'si.
string url = "https://www.instagram.com/jigmonetas.tr/";
// Varsayılan tarayıcıda bağlantıyı aç.
System.Diagnostics.Process.Start(url);
}
private void boxYoutube_Click(object sender, EventArgs e)
{
// Bağlantı URL'si.
string url = "https://www.youtube.com/@jigmonetasTR";
// Varsayılan tarayıcıda bağlantıyı aç.
System.Diagnostics.Process.Start(url);
}
private void MainForm_Load_1(object sender, EventArgs e)
{
}
}
}
Kaynak kod2.
Kod:
using System;
using System.Windows.Forms;
namespace JigmonTR_Hile_Kontrol_Araci
{
public partial class Form2 : Form.
{
private MainForm mainForm; // MainForm'un referansı.
public Form2(MainForm form)
{
InitializeComponent();
mainForm = form;
this.FormBorderStyle = FormBorderStyle.None; // Boyutlandırmayı ve taşımayı kapat.
this.MaximizeBox = false; // Tam ekran yapmayı engelle.
this.FormClosing += new FormClosingEventHandler(Form2_FormClosing); // FormClosing olayını bağla.
}
private void Form2_FormClosing(object sender, FormClosingEventArgs e)
{
if (e.CloseReason == CloseReason.UserClosing)
{
e.Cancel = true; // Kapatma işlemini iptal et.
this.Hide(); // Formu gizle.
}
}
private void groupBoxZamanAraliklari_Enter(object sender, EventArgs e)
{
// Buraya gerekli işlemleri ekleyin.
}
public int GetSelectedInterval()
{
if (radioButton1.Checked) return 1;
if (radioButton2.Checked) return 2;
if (radioButton3.Checked) return 3;
if (radioButton4.Checked) return 4;
if (radioButton5.Checked) return 5;
if (radioButton6.Checked) return 6;
if (radioButton7.Checked) return 7;
if (radioButton8.Checked) return 8;
if (radioButton9.Checked) return 9;
if (radioButton10.Checked) return 10;
if (radioButton11.Checked) return 11;
if (radioButton12.Checked) return 12;
if (radioButton13.Checked) return 13;
if (radioButton14.Checked) return 14;
if (radioButton15.Checked) return 15;
if (radioButton16.Checked) return 16;
if (radioButton17.Checked) return 17;
if (radioButton18.Checked) return 18;
if (radioButton19.Checked) return 19;
if (radioButton20.Checked) return 20;
if (radioButton21.Checked) return 21;
if (radioButton22.Checked) return 22;
if (radioButton23.Checked) return 23;
if (radioButton24.Checked) return 24;
if (radioButton25.Checked) return 25;
if (radioButton26.Checked) return 26;
if (radioButton27.Checked) return 27;
if (radioButton28.Checked) return 28;
if (radioButton29.Checked) return 29;
if (radioButton30.Checked) return 30;
if (radioButton31.Checked) return 31;
if (radioButton32.Checked) return 32;
if (radioButton33.Checked) return 33;
if (radioButton34.Checked) return 34;
if (radioButton35.Checked) return 35;
if (radioButton36.Checked) return 36;
if (radioButton37.Checked) return 37;
if (radioButton38.Checked) return 38;
if (radioButton39.Checked) return 39;
if (radioButton40.Checked) return 40;
if (radioButton41.Checked) return 41;
if (radioButton42.Checked) return 42;
if (radioButton43.Checked) return 43;
if (radioButton44.Checked) return 44;
if (radioButton45.Checked) return 45;
if (radioButton46.Checked) return 46;
if (radioButton47.Checked) return 47;
if (radioButton48.Checked) return 48;
if (radioButton49.Checked) return 49;
if (radioButton50.Checked) return 50;
if (radioButton51.Checked) return 51;
if (radioButton52.Checked) return 52;
if (radioButton53.Checked) return 53;
if (radioButton54.Checked) return 54;
if (radioButton55.Checked) return 55;
if (radioButton56.Checked) return 56;
if (radioButton57.Checked) return 57;
return 0; // Hiçbir şey seçilmediyse 0 döndür.
}
}
}
Kaynak kod 3
Kod:
using System;
using System.Windows.Forms;
namespace JigmonTR_Hile_Kontrol_Araci
{
static class Program.
{
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new MainForm());
}
}
}