Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.10.2019, 08:00   #1
Павел_ТГУ
 
Регистрация: 07.03.2017
Сообщений: 4
По умолчанию Delphi+asm

Есть массив
var
arr: array[0..84991] of Byte =(
$4d,$5a,$90,$00,$03,$00,$00,$00,$04 ,$00,$00,$00,$ff,$ff,$00,$00,
$b8,$00,$00,$00,$00,$00,$00,$00,$40 ,$00,$00,$00,$00,$00,$00,$00,
$00,$00,$00,$00,$00,$00,$00,$00,$00 ,$00,$00,$00,$00,$00,$00,$00,...
......
$00);
y:Pointer;


Не получается запустить его на выполнение:

asm
MOV EAX, y
LEA EBX, arr[0]
CALL EBX
end;

Помогите запустить массив.
Павел_ТГУ вне форума Ответить с цитированием
Старый 07.10.2019, 08:31   #2
alexcoder
Форумчанин
 
Регистрация: 31.05.2009
Сообщений: 786
По умолчанию

Что пишет? Шлем для телепатии подсказывает, что у массива нет прав на выполнение и их следует установить страницам памяти, в которых расположен массив функцией VirtualProtect, но это не точно)
Помощь с программами:
vk.com/alexcoder1
e-mail: informatik101@mail.ru
alexcoder вне форума Ответить с цитированием
Старый 07.10.2019, 08:39   #3
Pavia
Лис
Старожил
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 2,409
По умолчанию

F9 Запустить программу
F5 Поставить Break Point
F7 Трассировать с заходом в процедуры
F8 Трассировать без захода в процедуры
https://prog-example.ru/goryachie-kl...-v-delphi.html
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .
Pavia вне форума Ответить с цитированием
Старый 07.10.2019, 08:49   #4
Павел_ТГУ
 
Регистрация: 07.03.2017
Сообщений: 4
По умолчанию

Цитата:
Сообщение от alexcoder Посмотреть сообщение
Что пишет? Шлем для телепатии подсказывает, что у массива нет прав на выполнение и их следует установить страницам памяти, в которых расположен массив функцией VirtualProtect, но это не точно)
Ошибку выдает при выполнении((
Павел_ТГУ вне форума Ответить с цитированием
Старый 07.10.2019, 08:58   #5
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

Цитата:
MOV EAX, y
а где
Код:
y:=....; //какой там адрес нам нужен
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Старый 07.10.2019, 09:02   #6
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,706
По умолчанию

Да не выполнится оно все равно. EXE-файл не просто с начала файла выполняется, там лоадер кучу работы сначала делает, а исполняемый код находится не с начала.
p51x вне форума Ответить с цитированием
Старый 07.10.2019, 10:05   #7
Павел_ТГУ
 
Регистрация: 07.03.2017
Сообщений: 4
По умолчанию

Цитата:
Сообщение от evg_m Посмотреть сообщение
а где
Код:
y:=....; //какой там адрес нам нужен
Я вот точно не помню чему присваивается Y, но у меня так написано и не работает:
y:=@arr[0];
Цитата:
Сообщение от p51x Посмотреть сообщение
Да не выполнится оно все равно. EXE-файл не просто с начала файла выполняется, там лоадер кучу работы сначала делает, а исполняемый код находится не с начала.
Ничего подобного у меня раньше выполнялся код из массива, я просто забыл как правильно сделать..((
Павел_ТГУ вне форума Ответить с цитированием
Старый 07.10.2019, 10:25   #8
Black Fregat
Программист
Участник клуба
 
Аватар для Black Fregat
 
Регистрация: 23.06.2009
Сообщений: 1,772
По умолчанию

Цитата:
Сообщение от Павел_ТГУ Посмотреть сообщение
Ничего подобного у меня раньше выполнялся код из массива
Так забейте в массив именно код, а не тупо файл .exe
Black Fregat вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Delphi] Разработать программу на языке DELPHI реализация метода ньютона нахождения решения уравнений MarinaTelpiz Помощь студентам 3 12.05.2017 15:43
Не изменяется интерфейс моей программы при переходе с Delphi 7 на Delphi 2010 Elvisnya Общие вопросы Delphi 3 28.04.2011 15:59
Народ у каво есть программа Биоритмов в Delphi или хотя бы исходник для Delphi Student_174 Помощь студентам 0 20.04.2011 12:53
Rad Studio 2011 XE: новое в Delphi, C++ Builder, RadPHP и Delphi Prism savva-paladin Софт 18 02.10.2010 20:24