Страница: 1 | 2 | 3 |
Вопрос: Внедрение в другую программу
Добавлено: 25.06.07 22:34
Автор вопроса: «0опай» | ICQ: Два, потом нуль, дальше-девять-шесть-девять-семь.
Ответы
Всего ответов: 31
Номер ответа: 16
Автор ответа:
«0опай»
ICQ: Два, потом нуль, дальше-девять-шесть-девять-семь.
Вопросов: 4
Ответов: 20
Профиль | | #16
Добавлено: 26.06.07 13:16
У меня возникает ошибка "Compile error: Invalid use of AddressOf operator" в строке:
Выделяя параметр: "AddressOf win_proc". В чём причина?
Номер ответа: 17
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #17
Добавлено: 26.06.07 15:24
Мышка вываливается из моих слабеющих пальцев, организм из последних сил борется со сном, а засыпающий мозг удивленно интересуется, как может работать оконная процедура в приведенном коде, если процедура по адресу, устанавливаемому SetWindowLong должна находится в адресном пространстве calc.exe?
Номер ответа: 18
Автор ответа:
Fever
Вопросов: 60
Ответов: 808
Профиль | | #18
Добавлено: 26.06.07 16:32
2EUGY Ржунимагупадссталом Йорику превед
Номер ответа: 19
Автор ответа:
Fever
Вопросов: 60
Ответов: 808
Профиль | | #19
Добавлено: 26.06.07 16:36
2Sharp: не знаю, я так делал и все работало
2EUGY: отдельный респект за то что все это счастье работает даже когда прога отрубаецца видимо умная винда не отпускает оконную процедуру ни под каким предлогом пока приложение не закроется
Номер ответа: 20
Автор ответа:
Fever
Вопросов: 60
Ответов: 808
Профиль | | #20
Добавлено: 26.06.07 16:38
Имхо необходимо еще
Call Shell("calc.exe", vbNormalFocus)
Sleep 300 'по вкусу
yorik = FindWindow(vbNullString, "Êàëüêóëÿòîð"
а то на медленных компах не будет работать и Йорик будет вечно убегать
Номер ответа: 21
Автор ответа:
EUGY
Вопросов: 0
Ответов: 454
Профиль | | #21
Добавлено: 26.06.07 21:35
to Sharp: нет никакого адресного пространства calc.
mybut1 = CreateWindowEx(...
,App.hInstance/B] ...)
Cпи спокойно.
to tester
должна находиться в модуле (не в форме).
P.S.
Бедный Йорик.
Номер ответа: 22
Автор ответа:
Ra$cal
ICQ: 8068014
Вопросов: 18
Ответов: 817
Web-сайт:
Профиль | | #22
Добавлено: 27.06.07 00:37
бейсик жжот
Номер ответа: 23
Автор ответа:
Ra$cal
ICQ: 8068014
Вопросов: 18
Ответов: 817
Web-сайт:
Профиль | | #23
Добавлено: 27.06.07 00:57
но ваще лучше юзоть длл и не парить мозгис дополнительным процессом. Например с меню такой фокус не пройдёт. Поэтому, имхо, лучше напесать нормальную dll и не парицо.
Номер ответа: 24
Автор ответа:
sne
Разработчик Offline Client
ICQ: 233286456
Вопросов: 34
Ответов: 5445
Web-сайт:
Профиль | | #24
Добавлено: 27.06.07 00:59
EUGY, извиняй, редко последнее время захожу
сэмпл работает. Но! никакого внедрения кода, увы и ах, нет. Попросту тупое создание кнопки на чужом окне с обработкой его на своем. И кнопка не принадлежит калькулятору, она принадлежит процессу ее создавшему. После закрытия ехе кнопка благополучно убивается вместе с процессом.
Короче говоря, это не внедрение, это заблуждение
Номер ответа: 25
Автор ответа:
EUGY
Вопросов: 0
Ответов: 454
Профиль | | #25
Добавлено: 27.06.07 01:13
Sne, да ни боже мой, и не пытался я кому-то замылить глаза. Просто накорябал пример адекватный вопросу. Я мог бы отписаться, как Sharp, мол сделай dll, а в ней перехват.
Называйся этот сайт не VBNET, а скажем-RentaCoder, я бы не стал так хулиганить.
Номер ответа: 26
Автор ответа:
Fever
Вопросов: 60
Ответов: 808
Профиль | | #26
Добавлено: 27.06.07 01:26
2sne ты проверял? у меня кнопка остается даже после закрытия процесса...
Номер ответа: 27
Автор ответа:
Fever
Вопросов: 60
Ответов: 808
Профиль | | #27
Добавлено: 27.06.07 01:27
звиняюсь, я из-под IDE запускал. как-то не подумал, что прога запускается внутри другого процесса
Номер ответа: 28
Автор ответа:
EUGY
Вопросов: 0
Ответов: 454
Профиль | | #28
Добавлено: 27.06.07 01:29
Fever процесс висит, глянь а диспетчере задач.
Номер ответа: 29
Автор ответа:
sne
Разработчик Offline Client
ICQ: 233286456
Вопросов: 34
Ответов: 5445
Web-сайт:
Профиль | | #29
Добавлено: 27.06.07 02:41
EUGY, возможно ты и прав
Номер ответа: 30
Автор ответа:
EUGY
Вопросов: 0
Ответов: 454
Профиль | | #30
Добавлено: 27.06.07 02:52
Спасибо, что ты меня понял.