Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# .NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
roadzero
1 / 1 / 0
Регистрация: 27.02.2010
Сообщений: 8
1

считать точку входа в переменную

27.02.2010, 17:00. Просмотров 1132. Ответов 6
Метки нет (Все метки)

Имеется программа, открывающая и прочитывающая ехе-файл:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
 
namespace virus
{
    class Program
    {
        static void Main(string[] args)
        {
            FileStream stream = new FileStream(@"C:\Documents and Settings\user\Мои документы\Visual Studio 2008\Projects\myname\myname\bin\Release\myname.exe", FileMode.Open, FileAccess.Read);
            stream.Position = 0;
            for (int i = 0; i < stream.Length; i++)
            {
                char s = Convert.ToChar(stream.ReadByte());
            }
            stream.Close();
        }
    }
}
Теперь необходимо считать в переменную адрес точки входа обрабатываемого ехе-файла. Как это сделать и какого типа будет переменная? Я так понимаю, речь идёт об AddressOfEntryPoint?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.02.2010, 17:00
Ответы с готовыми решениями:

Не удается найти точку входа в Dll
Добрый день. Помогите пожалуйста не знаю что делать. У меня есть библиотека...

Не удается найти точку входа в dll
Здравствуйте! Помогите разобраться пожалуйста. Пишу DLL'ку: .cpp файл ...

Как передать точку входа процедуры?
А есть возможность в VB.NET и C# передать в качестве параметра указатель/точку...

Не удается найти точку входа "WMS_Open" в DLL "Pc.Shared.Barcode.dll"
Добрый день. У меня проблема с распознаванием штрих-кода (библиотеками...

Для входа в базу данных использовать тот же пароль, что и для входа в Windows
Здравствуйте, можно ли как нибудь перенять пароль от Windows и использовать его...

6
LordXaosa
27.02.2010, 20:57
  #2

Не по теме:

с таким namespace вам вряд ли кто станет помогать XD

1
gGrn-7DA
мну довольно <(-__-)l
206 / 195 / 15
Регистрация: 17.01.2010
Сообщений: 2,397
Завершенные тесты: 1
27.02.2010, 21:45 3
ага. надо модеров привлечь)
0
SergBokh
82 / 74 / 13
Регистрация: 03.09.2009
Сообщений: 346
27.02.2010, 23:30 4
Да, и уведомить отдел "К".
0
roadzero
1 / 1 / 0
Регистрация: 27.02.2010
Сообщений: 8
28.02.2010, 13:17  [ТС] 5
это университетское задание, честно, честно
0
Humanoid
Почетный модератор
9969 / 3857 / 344
Регистрация: 12.06.2008
Сообщений: 11,382
28.02.2010, 22:35 6
Посмотри в разных справочниках спецификацию PE... в Википедии есть много ссылок. Например, тут.
Пока вопрос не нарушает никакие правила... а название ничего не значит... лишь бы небыло матерным
0
SSV
Заблокирован
01.03.2010, 12:09 7
Не знаю насчет точки входа, но я попробовал прочитать свой экзешник и вот что получилось
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
private void button1_Click(object sender, EventArgs e)
        {
            FileStream fs = new FileStream(System.Reflection.Assembly.GetExecutingAssembly().Location, FileMode.Open, FileAccess.Read);
            byte[] arrfile = new byte[fs.Length ];
            fs.Position = 0;
 
            fs.Read(arrfile, 0, arrfile.Length);
            fs.Close();
         
 
            for (int i = 0; i < arrfile.Length -1; ++i)
            {
                char c = ' ';
            
                c = (char)(arrfile[i]);
                    string str = c.ToString();
                    if (str == " ") textBox1.Text += Environment.NewLine;
                    if (System.Text.RegularExpressions.Regex.IsMatch(str, "^\\d{1}$"))
                    {
                        textBox1.Text += str;
                    }
                    else if (System.Text.RegularExpressions.Regex.IsMatch(str, @"[а-я]$"))
                    {
                        textBox1.Text += str;
                    }
                    else if (System.Text.RegularExpressions.Regex.IsMatch(str, @"[А-Я]$"))
                    {
                        textBox1.Text += str;
                    }
                    else if (System.Text.RegularExpressions.Regex.IsMatch(str, @"[a-z]$"))
                    {
                        textBox1.Text += str;
                    }
                    else if (System.Text.RegularExpressions.Regex.IsMatch(str, @"[A-Z]$"))
                    {
                        textBox1.Text += str;
                    }
                    else if (System.Text.RegularExpressions.Regex.IsMatch(str, @"[\+\-\/\@\#\%\^\*\(\)\;\:\'\<\>]$"))// и т.д.
                    {
                        textBox1.Text += str;
                    }
 
                 
            }
0
01.03.2010, 12:09
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.03.2010, 12:09

Что такое точка входа? (opengl32.dll была загружена, но найти точку входа для DllRegisterServer не удалось.)
:help: при открывании игр показывает окно: RegSvr32 opengl32.dll была...

Компиляция в Release не находит точку входа
у меня есть программа запускается в дебаге но я не понимаю как вывести ее в...

Не удается найти точку входа в DLL
Здравствуйте! Объявление функции в исходниках библиотеки. std::string* ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru