Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.04.14;
Скачать: CL | DM;

Вниз

Выделение памяти   Найти похожие ветки 

 
Sectey ©   (2003-04-02 18:40) [0]

Как выделить память, чтобы другая программа могда в нее записывать свои данные?


 
MBo ©   (2003-04-02 18:45) [1]

вопрос неясен.
Может, MMF устроит?


 
Serginio   (2003-04-02 18:45) [2]

Только через отображаемые в память файлы


 
Sectey ©   (2003-04-02 18:50) [3]

Я вызываю функцию:
SendMessage(wnd,TB_GETBUTTON,i, longint(Button)))
и мне выдается сообщение что не могу записать в память. Т.е. мне надо выделить память так чтобы получатель мог писать в данную память. Как мне это сделать?


 
Sectey ©   (2003-04-02 19:08) [4]

>Serginio

А как мне это сделать?


 
Serginio   (2003-04-02 19:22) [5]

Передавать данные между разными процессами можно через WM_CopyData.


 
Sectey ©   (2003-04-02 19:47) [6]

>Serginio
Выделяю память MMF

выдержка Win32
TB_GETBUTTON
wParam = (WPARAM) iButton;
lParam = (LPARAM) (LPTBBUTTON) lpButton;

lParam - указатель на структуру TBBUTTON

я передаю ему этот указатель. А мне в ответ говарят что Память не может "written". Тобишь на сколько я понил он не может записать в выделенную мной память.


 
Zz_   (2003-04-02 19:52) [7]

А может

longint(@Button)


 
Serginio   (2003-04-02 19:53) [8]

Посмотри для примера http://www.delphikingdom.ru/asp/answer.asp?IDAnswer=7813
А может SendMessage(wnd,TB_GETBUTTON,i, longint(@Button)))
Если Button:TBBUTTON;



 
Sectey ©   (2003-04-02 19:55) [9]

Да в том то и дело что Button является указателем


 
Sectey ©   (2003-04-02 19:59) [10]

>Serginio
Я уже видел этот пример и более или менее разобрался


 
Serginio   (2003-04-02 20:09) [11]

Попробуй через CreateFileMapping, MapViewOfFile но навряд ли
Ты хочешь получить заполненную структуру TBBUTTON. Может и не выйти в разных процессах. Сам не пробовал.


 
Sectey ©   (2003-04-02 20:12) [12]

>Serginio
Я и делаю через CreateFileMapping, MapViewOfFile.
А обратная сторона говарит немогу записать в память.


 
Serginio   (2003-04-02 20:20) [13]

Все правильно ты передаешь ссылку на память другого процесса.
Помоему только WM_CopyData преобразует указатель на память. Заходи в процесс программы больше нечего посоветовать. А может быть есть функция межпроцессорного преобразования указателей ???


 
Serginio   (2003-04-02 20:29) [14]

Можно попробовать загрузить DLL в этот процесс отобразить файл в память и передать его адрес в свой процесс. В своем процессе записать в начало отображаемого файла а ссылку передать адресс полученный из того процесса.



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

Текущий архив: 2003.04.14;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.018 c
1-44173
CITY_ELF
2003-04-03 17:58
2003.04.14
ТАЙМЕР для дельфи


14-44408
FLIZ
2003-03-28 15:21
2003.04.14
Как определить длину RTF текста? (+)


1-44238
VadimS
2003-04-02 10:30
2003.04.14
Текст кодировки DOS в Windows кодировку


7-44466
AndrewVolkov
2003-02-17 20:31
2003.04.14
На печать - а там пусто ????


3-44011
Minivan
2003-03-25 08:13
2003.04.14
базы данных