Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> обмен данными через memory mapped файл 
:(
    Опции темы
slvax
Дата 13.1.2010, 21:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 24.11.2009

Репутация: нет
Всего: нет



Уважаемые профи, помогите плз разобраться с проблемкой. Суть проблемы в сследующем
Создаю map файл, отображаю его в памяти, в длл(хуке) записываю в поля map файла хэндл и текстовую строку. в главной программе читаю поля map файла, хэндл читается, а строка всегда null, не могу понять - в чем дело. На всякий случай привожу фрагменты программы.
Код

в map файле:
  PHookInfo = ^THookInfo;
  THookInfo = packed record
    text1:String;
    FormHandle: THandle; 
  end;
в длл
    s:='qq';
    CopyMemory(Pointer(DataArea^.text1),PChar(s),Length(s));
в главной программе:
    wnd:=DataArea^.FormHandle;
    t:=String(PChar(DataArea^.text1));


PM MAIL   Вверх
Демо
Дата 13.1.2010, 21:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1278
Регистрация: 3.11.2005

Репутация: 6
Всего: 50



Кода совершенно недостаточно.
Нужен код c созданием отображения, получения в DLL, записи и чтения строк.


--------------------
    
PM MAIL ICQ Skype   Вверх
bems
Дата 14.1.2010, 20:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 3400
Регистрация: 5.1.2006

Репутация: 21
Всего: 88



map-файл это другое, исправил название.

Нельзя использовать String в этом случае. во-первых это не только массив символов, во-вторых у тебя только указатель в расшареной памяти, а не сама строка.


--------------------
Обижено школьников: 8
PM MAIL   Вверх
slvax
Дата 14.1.2010, 23:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 24.11.2009

Репутация: нет
Всего: нет



Спасибо, объявил массив символов и все заработало.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: WinAPI и системное программирование"
Snowybartram
MetalFanbems
PoseidonRrader
Riply

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Delphi обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • 99% ответов по WinAPI можно найти в MSDN Library, оставшиеся 1% здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема »


 




[ Время генерации скрипта: 0.0420 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.