![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 19.12.2011
Сообщений: 28
|
![]()
В программе имеется следующий код:
Код:
И всё работало бы хорошо, если бы не Windows-часть этой функции... А в ней происходит непонятное - при вызове функции со следующими параметрами: Код:
![]() Такое поведение замечено во всех случаях использования данной функции - остальной функционал (ReadFile и WriteFile) работает как часы... Вроде бы использовал эту библиотеку и раньше, ничего такого не замечал. Но тогда у меня стояла XP 32bit, а сейчас - Win8 64bit. Компилятор - MinGW из последней бинарной сборки Code::Blocks (12.11). PS: Чуть не забыл структуру ESeekMethod и тип StreamSize;, а то сразу бы все бочки на неё катили бы ![]() Код:
Последний раз редактировалось andreil; 15.12.2013 в 12:40. |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,331
|
![]()
А почему spEnd?
|
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 19.12.2011
Сообщений: 28
|
![]() |
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,331
|
![]()
Насколько я помню, spEnd будет как раз размер файла - аргумент, так что подозреваю, будет
seek(file, -sizeof(GPK_sig_t), spEnd) |
![]() |
![]() |
![]() |
#5 | |
Пользователь
Регистрация: 19.12.2011
Сообщений: 28
|
![]() Цитата:
Хм, сейчас глянул в отладчике и заметил косяк... Функция fileSeek принимает размер с типом StreamSize, равный int64_t (как и все функции для работы с файловыми потоками, включая и класс-обертку). Метод класса вызывается с параметром -sizeof(GPK_sig_t). Смотрим в отладчике и видим, что у moveTo младшие 32 бита содержат наше число, а старшие - нули ![]() Код:
PS: Поправить сейчас не могу, ибо машина с Виндоус дома ![]() ![]() Последний раз редактировалось andreil; 16.12.2013 в 12:51. |
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Установка файла образа | nadia.mot | Свободное общение | 1 | 24.10.2010 22:48 |
Неверная запись | Golovastik | HTML и CSS | 1 | 26.07.2010 21:34 |
Получение и установка атрибутов файла | Волк | Microsoft Office Excel | 1 | 21.05.2009 04:56 |
Установка указателя в одной таблице по значению из другой | Avalonix | БД в Delphi | 1 | 31.05.2008 17:20 |
Неверная ссылка на профиль | AlDelta | О форуме и сайтах клуба | 2 | 27.10.2007 21:03 |