Вниз
Скачать: CL | DM;

Можно ли изменить параметр FVisible в привате класса другого юнит   Найти похожие ветки 

 
ProV   (2006-10-28 05:53) [0]

юнита? И если да, то как?
Нужно, чтобы не вносить своих изменений в исходник проекта с открытым исходником лежащим на CVS и часто оттуда обновляемым.


 
vidiv ©   (2006-10-28 07:52) [1]

Можно...
вычислить смещение и записать в память... но это некрасиво!


 
ЮЮ ©   (2006-10-28 08:46) [2]


> Нужно, чтобы не вносить своих изменений в исходник проекта
> с открытым исходником лежащим на CVS и часто оттуда обновляемым

Добавь protected св-во для изменения этого поля. И залей туда.Пусть все пользуются.

А может уже есть метод для его изменения?


 
vidiv ©   (2006-10-28 08:54) [3]

program Project2;

{$APPTYPE CONSOLE}

type

   TMyClass=class(TObject)
       private
         FVisible: boolean;
       public
         constructor Create;
         procedure Show;
   end;

   PBoolean = ^Boolean;

{ TMyClass }

constructor TMyClass.Create;
begin
   FVisible := false;
end;

procedure TMyClass.Show;
begin
   Writeln(FVisible);
end;

var Obj: TMyClass;
begin
   Obj := TMyClass.Create;
   Obj.Show;
   PBoolean(integer(Obj)+4)^ := true;
   Obj.Show;
   Obj.Free;
   readln;
end.


 
Anatoly Podgoretsky ©   (2006-10-28 13:01) [4]

Грязным хаком пахнет


 
vidiv ©   (2006-10-28 18:10) [5]

А вот вызвать метод - это уже сложнее... Самое сложное найти его адрес в памяти... Хотя это для меня, для когото может и просто =)


 
MsGuns ©   (2006-10-28 18:16) [6]

>Anatoly Podgoretsky ©   (28.10.06 13:01) [4]
>Грязным хаком пахнет

Я бы даже сказал "смердит"



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.027 c
15-1162365160
Prohodil Mimo
2006-11-01 10:12
2006.11.19
Ну вот и всё, скоро не будет у меня паспорта "Alien" :o)


15-1161919258
SlymRO
2006-10-27 07:20
2006.11.19
Опять RO?! За что?


11-1139146742
Ganda1f
2006-02-05 16:39
2006.11.19
STL для дельфи (тестируем)


4-1151947845
leonidus
2006-07-03 21:30
2006.11.19
Вопрос про установку глобального хука


15-1162140248
Ketmar
2006-10-29 19:44
2006.11.19
E107 CMS




   Наверх