Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.12.04;
Скачать: CL | DM;

Вниз

Указатели   Найти похожие ветки 

 
pohil   (2005-11-19 18:43) [0]

Мне нужно постранично(по 0х1000) проставить на памяти PAGE_EXECUTE_READWRITE.

VirtualProtectEx(p_handle, Image + i, $1000, PAGE_EXECUTE_READWRITE, @dwOldProt);

Это в идеале. .Image это указатель на память а i Integer который в цикле увеличивается на $1000.

Так вот мне нужно получить Pointer, который ссылался бы на память Image + i.

К сожалению тип Pointer не поддерживает арифметические операции.

Подскажите где есть Дао.


 
Lamer@fools.ua ©   (2005-11-19 19:42) [1]

>>pohil   (19.11.05 18:43)

>К сожалению тип Pointer не поддерживает арифметические операции.
var
 P: Pointer;
begin
 ...
 P := Pointer(Cardinal(P) + 12345);
end;


 
pohil   (2005-11-19 20:25) [2]

>P := Pointer(Cardinal(P) + 12345)

Скажи плз это эквивалент P := @(Cardinal(P) + 12345)?


 
Lamer@fools.ua ©   (2005-11-20 12:43) [3]

>>pohil   (19.11.05 20:25) [2]

Нет, конечно.
Это:
P := @(Cardinal(P) + 12345)
даже не скомпилируется.


 
sniknik ©   (2005-11-20 12:58) [4]

наглядно
var
 P: Pointer;
 D: Cardinal absolute P;
begin
 PChar(P):= "123456789";
 Label1.Caption:= PChar(P);
 D:= D + 5;
 Label2.Caption:= PChar(P);
end;



Страницы: 1 вся ветка

Текущий архив: 2005.12.04;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.08 c
4-1128415767
AngelFire
2005-10-04 12:49
2005.12.04
Перехват ввода


9-1121277179
Conferno
2005-07-13 21:52
2005.12.04
CubeMaps везде!!! GLScene


3-1129836987
lra
2005-10-20 23:36
2005.12.04
выборка заданного количества записей с помощью sql-запроса


14-1131967528
WondeRu
2005-11-14 14:25
2005.12.04
Новый год в Москве. Где остановиться? :)


14-1131962847
adamov_a
2005-11-14 13:07
2005.12.04
HTML Editor как компонент или функция