Я создал инструмент в Delphi для создания радужного стола.Это было нормально, пока файл не вырос до 3,1 ГБ.Я закрыл свою программу.Затем я снова открыл его, и он вылетает при выполнении этого кода:
Assign(RainbowFile,'Rainbow_table.txt'); {assign a text file}
Append(RainbowFile);
Delphi показывает ошибку "поднял класс ожидания EInOutError с сообщением" ошибка ввода-вывода 131 ". Мой вопрос: как добавить данные в существующий файлбольше 2 ГБ. // Устаревший Следующий вопрос: У меня есть код:
Content_to_file := (#13+#10+Start_string+':'+hexstr(GTA_San_Andreas_CRC32(Start_string), 8));
RainbowFile_handle.WriteBuffer( Content_to_file[1], Length(Content_to_file)*SizeOf(Char));
Как избавиться от переменной Content_to_file. Я хочу поместить ее непосредственно в WriteBuffer, если это возможно.
РЕДАКТИРОВАТЬ:
TFileStream работает с файлами размером более 2 ГБ. Я проверил это сейчас. Однако можно написать так:
RainbowFile_handle.WriteBuffer( Start_string[1]+':',
Я имею в виду, чтобы передать переменный аргумент.Или я определенно передал первый символ переменной?
РЕДАКТИРОВАТЬ 2:
В настоящее время я сделал это следующим образом:
Content_to_file := (#13+#10+Start_string+':'+hexstr(GTA_San_Andreas_CRC32(Start_string), 8));
RainbowFile_handle.WriteBuffer( Content_to_file[1], Length(Content_to_file)*SizeOf(Char));
Можно ли сделать это безэта переменная?