![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
![]() Доброго всем!
Имеется код на С++. Помогите перевести данный код на Delphi: Код:
DWORD BaseAddr = 0x400000; DWORD LASER = BaseAddr + 0x0056E78; DWORD NAMETAGS = BaseAddr + 0x02E1CE; BYTE Laser[] = {0x74, 0x04}; BYTE NameTags[] = {0x75, 0x12}; BYTE NopOne[] = {0x90}; ..... WriteProcessMemory(ProcessHandle, (void*)LASER, &Laser, 2, 0); WriteProcessMemory(ProcessHandle, (void*)NAMETAGS, &NopOne, 1, 0); Интересуют выделенные красным фрагменты... Как это на D7? Заранее спасибо! |
#2
|
||||
|
||||
![]() Но точнее скажет DJ PhoeniX
Код:
const BaseAddr : DWORD = $400000; LASER : DWORD = BaseAddr + $0056E78; NAMETAGS : DWORD = BaseAddr + $02E1CE; aLaser : array[0..1] of Byte = ($74, 4); aNameTags : array[0..1] of Byte = ($75, $12); aNopOne : Byte = $90; ..... WriteProcessMemory(ProcessHandle, LASER, @aLaser, 2, 0); WriteProcessMemory(ProcessHandle, NAMETAGS, @aNopOne, 1, 0); Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
#3
|
||||
|
||||
![]() aNopOne массив же, хоть и из одного элемента. Хотя по сути, если я правильно помню про массивы в делфи, массив из одного элемента и переменная там хранятся одинаково, если передавать их по указателям. Так что код angvelem должен работать.
Ну и надо проверить, какой тип данных принимает в D* функция WriteProcessMemory. Если Cardinal / DWORD - то всё нормально, если Pointer - соответственно добавить приведение типов. Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj Последний раз редактировалось PhoeniX, 09.11.2011 в 22:56. |
#4
|
||||
|
||||
![]() Точно, Pointer. Думаю ТС с этой малостью справится сам, вроде всё объяснили.
Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |