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

Доступ к объекту другого приложения   Найти похожие ветки 

← →
VID ©   (2002-02-19 21:08) [0]

Предположим у меня есть информация о названии, и тепе какого-либо объекта(BTN1:TBITBTN) в запущеном чужом приложении. КАК можно ИЗ СВОЕЙ программы получить доступ к свойствам (хотя бы к тем, которые обычно может изменять Object Inspector) этого объекта, и возможность изменять свойства этого объекта.

В идеале, видиться также создание своей программы, которая с помощь компонента TProperEditor (есть такой, из пакета DreamCollection) будет менять все Published-свойства любого объекта, любого(или почти) запущенного приложения.

Неплохая получилась бы штучка :)

Ну, как, есть идеи ?


← →
VID ©   (2002-02-20 11:24) [1]

что совсем никаких идей ?


← →
DieHard ©   (2002-02-20 11:52) [2]

Сдается мне, тебе придется обращаться к этому объекту через функции WinAPI и самому реализовывать всю функциональность VCL в своем приложении, да и то, если этот объект имеет хэндл окна...


← →
Digitman ©   (2002-02-20 13:39) [3]

прежде чем летать в "VCL-объектных небесах", давай еще чуть "потопчемся по ОС-объектной земле")

надо понимать, ты себе четко представляешь, как вообще можно обратиться к АП чужого процесса для чтения из его сегментов / выполнения фрагмента кода в его код.сегменте ?


← →
VID ©   (2002-02-20 18:05) [4]

TO Digitman: ну не совсем... хотя возможно я просто вопрос не понял.

А вообще, понятно, что не все программы пишуться на дельфи, и не все которые пишуться на дельфи, использую VCL.

ОК, тогда сделаем ограничения: разрабатываемая программы будет иметь доступ к VCL-объектам только тех прог, которые написаны на D и используют VCL.

Это наверное попроще ?


← →
[NIKEL] ©   (2002-02-20 18:12) [5]

просто так до другого объекта ты не достучишься, на то и винда писалась так чтоб все процессы были защищены и работали в своём адресном пространстве, надо чтоб этот объект имел оговоренный программируемый интерфейс, которым можно пользоваться (но явно не менять его внутреннюю организацию)


← →
McSimm ©   (2002-02-20 18:13) [6]

Я когда-то написал именно такую программу. :)
Из нее можно менять published поля большинства объектов чужой программы на Делфи.

Один ньюанс - все это работает только для 16ти битных приложений. Можно ли сделать подобное для 32-битных - не знаю.


← →
Юрий Зотов ©   (2002-02-20 18:33) [7]

> все это работает только для 16ти битных приложений.
> Можно ли сделать подобное для 32-битных - не знаю.

В том-то все и дело, что в Win16 адресное пространство было ОБЩИМ для ВСЕХ приложений, а в Win32 КАЖДЫЙ процесс имеет СВОЕ адресное пространство.


← →
VID ©   (2002-02-20 19:50) [8]

To all peoples: Т.е. Вы хотите сказать, что я размечтался ? :)

Если так... т.е. получается что таких программ ещё нет ?

Тогда получается, ещё одна нереализованная идея... Честно говоря не верится что невозможно осуществить этот проект... Может и не на дельфи, но всё-таки скорее всего возможно, Хотя из ваших рассуждения я понял, что мне этого не сделать... пока не сделать :)



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

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



Память: 0.47 MB
Время: 0.008 c
1-19142
Брат
2002-02-21 10:26
2002.03.07
Код клавиши Del


3-19052
Bormanoid
2002-02-07 19:48
2002.03.07
Как отобразить в Label дату?


1-19266
Stiky
2002-02-20 15:37
2002.03.07
Полноэкранное приложение


1-19224
hair_fly
2002-02-19 12:54
2002.03.07
Как записать полную информацию о форме в stream ?


7-19356
Ant_bofh
2001-11-29 08:59
2002.03.07
Опять COM-порт и всё что связано :-)




   Наверх