![]() |
|
Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply |
![]()
|
|
| RinOSpro |
|
|||
|
Unregistered |
Всем привет! В C++ такая замечательная штука, которая позволяет экземплярам одного и того-же exe'шника работать с общей переменной:
Если этот кусок кода положить в dll, то любой процесс, загрузив эту dll без релоцирования, сможет работать с этой переменной. Как подобное можно реализовать в Delphi? Сразу приходит на ум: TCP, UDP, Shared Memory, Pipes, Mailslots, но это как то громоздко для такой, казалось бы простой задачи... |
|||
|
||||
| kami |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1806 Регистрация: 25.8.2007 Где: Санкт-Петербург Репутация: 15 Всего: 72 |
Если кто-нибудь объяснит, как это возможно - было бы отлично. Ведь каждый процесс во-первых имеет свою копию dll, а во-вторых - он варится в своем собственном адресном пространстве... Пересечение областей памяти (без специализированных манипуляций) в user-mode, имхо, нереально. Не зря же существует целый раздел IPC. |
|||
|
||||
| northener |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1361 Регистрация: 2.9.2010 Репутация: нет Всего: 20 |
-------------------- Но только лошади летают вдохновенно. Иначе лошади разбились бы мгновенно! |
|||
|
||||
| kami |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1806 Регистрация: 25.8.2007 Где: Санкт-Петербург Репутация: 15 Всего: 72 |
||||
|
||||
| RinOSpro |
|
|||
|
Unregistered |
Безболезненно как в С++ не получилось... Пришлось писать как раз через:
Ловите может кому пригодится
Это сообщение отредактировал(а) RinOSpro - 29.8.2011, 09:22 |
|||
|
||||
| bems |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3400 Регистрация: 5.1.2006 Репутация: 21 Всего: 88 |
Так что в общем-то плюсы тут особо не причем, просто там линкеру можно задать SEC_COFF_SHARED а в дельфи, насколько я знаю, нельзя. Ну и если вызов (не CreateFileMapping но смысл почти тот же) провалится, то это отказ при загрузке модуля Это сообщение отредактировал(а) bems - 31.8.2011, 21:41 -------------------- Обижено школьников: 8 |
|||
|
||||
![]()
|
| Правила форума "Delphi: WinAPI и системное программирование" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |