Цитата(Igor87 @ May 16 2010, 23:31)

Есть задача: принимать данные от аппаратуры программой1 и через файл передавать их в программу2. Действие происходит в Windows XP.
При этом не устраивает скорость записи данных в файл. Передача осуществляется средствами WinAPI.
Есть ли более быстрые способы передачи данных?
Желательно минимальное изменение изменение кодов программ по причине того, что программу 1 и 2 делают разные люди.
Даже средствами WinAPI скорость сильно зависит от того, записываете ли вы файл маленькими кусочками, или же большими блоками. Максимальная скорость получается, если писать блоками с размером, равным величине кластера на диске, отменив буферизацию. Т.е. здесь вы делаете такую буферизацию вручную. Ну, а самая медленная скорость получится, если писать функцией WriteFile() побайтно.
А если нужен обмен между двумя программами на одном и том же компьютере, то надо открывать "виртуальные" файлы - файлы, отображаемые на память (при помощи функции API CreateFileMapping()). О том, как это делается, читайте тут -
http://frolov-lib.ru/books/bsp/v27/ch1_1.htm