Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Обмен данными между процессами [D6, Win2k, WinXP]


Страницы:   1 2 3 4 5

Сергей_С ©   (2006-07-12 09:19:00) 

Господа, подскажите, каким образом можно обмениваться данными меджу процессами, запущенными одновременно в одной ОС. Какой-нибудь простой и стабильный способ.

Варианты через файловую систему, DDE, OLE, COM - просьба не рассматривать.

Данные имеют бинарный формат.

Заранее спасибо.


Fay   (2006-07-17 12:05:00) [1]

На C даже лучше...


Игорь Шевченко   (2006-07-17 11:52:00) [2]

MikProg ©   (17.07.06 11:48) [81]


> Но послезавтра (перевод с С).


Можно не переводить, тут С тоже понимают...


MikProg   (2006-07-17 11:48:00) [3]


> хорошая опечатка =)
> ещё вариант - "Теоеретики" =)

Мда опечатался. Д.б. "Теореееетики" :)
Уговорили. Код будет. Но послезавтра (перевод с С).
BTW. Прошу отметится здесь тех кто пробовали не получилось. Этих будем считать заблуждающимися, остальных же теореееетиками:)


sniknik   (2006-07-17 11:20:00) [4]

краткая аллегорическая стенограмма спора ;), для тех кому всю ветку влом читать. суть так сказать.

- угадаю мелодию с шести нот!
- я, с пяти!
- с четырех!
- трех!
- двух!
- с одной!!!
- это невозможно. угадывай!!!
- нет это возможно. сам угадывай!!! теоретик.


последние две строчки повторяются в периоде. ноты по количеству это методы решений.
p.s. тоже неохота "встревать", но всетаки кажется логичным показать как это делается тому кто говорит, что это возможно, а не тому кто говорит невозможно (ему то и показывать нечего. если решения нет. то его нет.).


Fay   (2006-07-17 11:11:00) [5]

2 MikProg ©   (17.07.06 10:33) [76]
Ступай и не греши. Твой бред тянет на орешник, только читать его грустно.


Игорь Шевченко   (2006-07-17 10:45:00) [6]

MikProg ©   (17.07.06 10:33) [76]

LMD


tButton   (2006-07-17 10:40:00) [7]

<offtop>

> Теореетики. :)

хорошая опечатка =)
ещё вариант - "Теоеретики" =)
</offtop>


MikProg   (2006-07-17 10:33:00) [8]

Там же где и ваш и Суслика и Шевченко. Теореетики. :)


evvcom   (2006-07-17 10:32:00) [9]


> [73] Ketmar ©   (17.07.06 10:23)
> >MikProg ©   (17.07.06 08:55) [69]
> код где? рабочий код?

Да он, похоже, только баснями кормить умеет. Крылов наш. :)


Игорь Шевченко   (2006-07-17 10:32:00) [10]

MikProg ©   (17.07.06 08:55) [69]

Где код Read до Eof ? Если сказал ерунду, то хоть признайся в этом, а не пости цитаты из help'а, не относящиеся к твоему заявлению.


Ketmar   (2006-07-17 10:23:00) [11]

>MikProg ©   (17.07.06 08:55) [69]
код где? рабочий код?


tButton   (2006-07-17 09:12:00) [12]


> Еще можно передавать данные, например, через Excel. По той
> же схеме.
> :о)

метод универсален в своей примитивности =)


Юрий Зотов   (2006-07-17 09:05:00) [13]

> MikProg ©   (17.07.06 08:55) [69]

Не вмешиваясь в вашу дискуссию, все же замечу, что 20 строчек кода были бы в 20 раз убедительнее, чем 20 строчек текста. ИМХО.
:о)


Юрий Зотов   (2006-07-17 08:57:00) [14]

> tButton ©   (17.07.06 08:06) [68]

Еще можно передавать данные, например, через Excel. По той же схеме.
:о)


MikProg   (2006-07-17 08:55:00) [15]

The MapViewOfFile function returns a pointer to the file view. By dereferencing a pointer in the range of addresses specified in MapViewOfFile, an application can read data from the file and write data to the file. Writing to the file view results in changes to the file mapping object. The actual writing to the file on disk is handled by the system. Data is not actually transferred at the time the file mapping object is written to. Instead, much of the file input and output (I/O) is cached to improve general system performance. Applications can override this behavior by calling the FlushViewOfFile function to force the system to perform disk transactions immediately.


Специально для корифеев болдом
Data is not actually transferred at the time the file mapping object is written to Instead, much of the file input and output (I/O) is cached to improve general system performance. Applications can override this behavior by calling the FlushViewOfFile function to force the system to perform disk transactions immediately
Специально для корифеефилов
by calling the FlushViewOfFile function to force the system to perform disk transactions immediately


tButton   (2006-07-17 08:06:00) [16]

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

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

ну и если программы обмениваются довольно часто и работают в фоне, то наверное такой способ не подойдёт.

ПыСы
я бы вообще не выпендривался, а сделал обмен данными через сокеты


Юрий Зотов   (2006-07-17 07:32:00) [17]

> tButton ©   (17.07.06 04:56) [66]

Да, но он для пользователя. Вряд ли кому понравится программа, которая затирает буфер обмена.

"The clipboard is user-driven. A window should transfer data to or from the clipboard only in response to a command from the user. A window must not use the clipboard to transfer data without the user's knowledge".

Цитата - из MSDN. Скопирована через буфер обмена. Это удалось сделать потому, что у меня таких программ, к счастью, не установлено...
:о)


tButton   (2006-07-17 04:56:00) [18]

не, я может глупость скажу... но разве "буфер обмена" (который clipboard) он не для обмена данными между приложениями? =)


Ketmar   (2006-07-17 03:40:00) [19]

MikProg, неуважаемый, а не пошли бы вы читать мануалы? прежде чем давать "советы космического масштаба и космической же глупости"...

поверьте (проверить вы не можете по понятной причине), что здесь собрались далеко не дилетанты... и уж Игорь -- однозначно не дилетант. и если он говорит -- то знает...


Игорь Шевченко   (2006-07-17 00:11:00) [20]

Суслик ©   (17.07.06 00:08) [63]

Дима я был бы тебе крайне признателен, если бы свое мнение ты выражал бы не столь публично, а, например, по аське.


Страницы:   1 2 3 4 5

Наверх

Титульная страница Поиск, карта сайта Написать письмо