![]() |
|
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]()
|
|
| gAlexKo |
|
||||||||||||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 72 Регистрация: 23.3.2011 Репутация: нет Всего: нет |
Hello, All! Подскажите!
Нужно переписать одну библиотеку на функции Windows API (чтобы работать с файлами больше 2 гиг). Прежняя библиотека была написана на функциях типа _lcreat, _lwrite, _lread etc. Новую библиоеку я написал, никаких проблем не случилось кроме одной - никак не получается получать доступ на чтение у файла который открыт на запись. К примеру, одна прога открывает файл на запись:
и начианает туда писать:
Друга прога пытается открыть этот же файл на чтение:
и считывать данные (предисторию событий)
При попытке второй проги открыть на файл на чтение происходит ошибка открытия - "файл уже используется другим процессом." Ниже я привожу исходники обих программ (Сбилдер, но это не важно для API): proga1 - пишет файл "test.txt"
proga2 - читает файл "test.txt"
Это сообщение отредактировал(а) GremlinProg - 7.12.2011, 12:43 |
||||||||||||||
|
|||||||||||||||
| feodorv |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2214 Регистрация: 30.7.2011 Репутация: 9 Всего: 45 |
Попробуйте открывать оба раза с FILE_SHARE_READ | FILE_SHARE_WRITE, должно помочь.
Поскольку у Вас один раз файл открывается на запись, то просто FILE_SHARE_READ не годится. Таблица режимов совместного использования файла Это сообщение отредактировал(а) feodorv - 7.12.2011, 17:48 -------------------- Напильник, велосипед, грабли и костыли - основные инструменты программиста... |
|||
|
||||
| gAlexKo |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 72 Регистрация: 23.3.2011 Репутация: нет Всего: нет |
Да спасибо, в этом было дело. |
|||
|
||||
![]()
|
| Правила форума "C/C++: Системное программирование и WinAPI" | |
|
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |