Перейти к содержанию
СофтФорум - всё о компьютерах и не только

Помогите исправить ошибку в программе


Рекомендуемые сообщения

compile.jpgВ остальных юнитах тоже самое работает, я даже переписывать заново пробовал третий юнит.

[Error] Unit3.pas(113): There is no overloaded version of 'Read' that can be called with these arguments

[Error] Unit3.pas(114): There is no overloaded version of 'Write' that can be called with these arguments

Вот такие ошибочки выдаёт Delphi 8, в Delphi 7 было всё ок, а тут какая-то х***я!.

Помогите!(Могу дать весь юнит 3 моей проги для узучения сдесь), но я уже пробовал переписывать юнит заново, но ничего не работает, а в остальных юнитах та-же команда работает!

Ссылка на комментарий
Поделиться на другие сайты

[Error] Unit3.pas(113): There is no overloaded version of 'Read' that can be called with these arguments

  [Error] Unit3.pas(114): There is no overloaded version of 'Write' that can be called with these arguments

Это вот эти строки:

f.Read(buf,n-(k-1)*40960);f2.Write(buf,n-(k-1)*40960);

Если в математическом выражении присутствует опреции, отличные от целочисленных (сложение, вычитание и т. д.), то результатом всего выражения будет не цело число, а число типа real (float), даже если результат с нулевой дробной частью... а функции Read и Write требуют целочисленного вторго аргумента... Тебе надо преобразовать результат выражения

n-(k-1)*40960

в integer.

Можно сделать это так:

f.Read(buf,integer(n-(k-1)*40960));f2.Write(buf,integer(n-(k-1)*40960));
Ссылка на комментарий
Поделиться на другие сайты

Нет это строки:

f.Read(buf,40960);

f2.Write(buf,40960);

f.Read(buf,n-(k-1)*40960);

f2.Write(buf,n-(k-1)*40960);

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

Ссылка на комментарий
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...