Как защитить сторонний exe-файл от запуска, установив на него пароль - C#

Узнай цену своей работы

Формулировка задачи:

Всем привет. Дали задание. Суть его такова: есть какой-то файл.exe. На него нужно "навесить" защиту. Как я понял нужно разбираться в структуре PE файлов. Но честно говоря, пока толком ничего не понял. Вообщем, направьте на путь истинный P.S. я на шарпе еще только учусь. Может есть какие-то встроенные методы, которые помогли бы мне в моем задании?
Возникла идея по моему вопросу. Возможно ли с помощью C# поменять точку входа в программе, если, анпример, пароль был введен не верно?

Решение задачи: «Как защитить сторонний exe-файл от запуска, установив на него пароль»

textual
Листинг программы
private void button1_Click(object sender, EventArgs e)
{
    var ofd = new OpenFileDialog();
    if (ofd.ShowDialog() == DialogResult.OK)
    {
        long seek;
 
        using (var read = File.OpenRead(ofd.FileName))
        {
            byte[] buffer = new byte[4];
            read.Seek(0x3C, SeekOrigin.Begin);
            read.Read(buffer, 0, buffer.Length);
 
            byte[] reverse = buffer.Reverse().ToArray();
            string pre_seek = null;
            foreach (var item in reverse)
                pre_seek += Convert.ToString(item, 16);
 
            seek = Convert.ToInt64(pre_seek, 16);
        }
 
        using (var write = File.OpenWrite(ofd.FileName))
        {
            byte[] buffer = { 0x00, 0x00 };
            write.Seek(seek, SeekOrigin.Begin);
            write.Write(buffer, 0, buffer.Length);
        }
    }
}
 
private void button2_Click(object sender, EventArgs e)
{
    var ofd = new OpenFileDialog();
    if (ofd.ShowDialog() == DialogResult.OK)
    {
        long seek;
        ...
 
        using (var write = File.OpenWrite(ofd.FileName))
        {
            byte[] buffer = { 0x50, 0x45 };
            ...
        }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.867 из 5
Похожие ответы