Написать файл в режиме чистого DOS?
Как мы знаем ВК WriteFile()
записывает данные на указанное устройство ввода-вывода в ОС (см. WriteFile)
Я хочу знать, есть ли такой API в чистых дозах для этой цели? (Используя Watcom C...)
Потом я нашел _dos_write()
в справочной странице 197 библиотеки Watcom c (см. _dos_write()
) и использует системный вызов 0x40 для записи количества байтов данных из буфера, на который указывает буфер, в файл, указанный дескриптором
Количество unsigned
введите, и это означает, что максимальное количество файлов будет 65535.
Мой вопрос: есть ли другие API, которые могут передавать более 65536 байт "один раз" (например, WriteFile()
делает) в чистом DOS?
Ps Речь не о командной строке в Windows!
1 ответ
65535 байт - это только предел количества байтов, которые мы можем записать / прочитать за один раз за один вызов. Если файл не закрыт, то просто вызовите запись / чтение еще раз с другим местоположением в оперативной памяти, тогда файловый счетчик будет перемещен к следующим 65535 байтам файла. Как сказал Джерри Коффин, нам нужно использовать несколько вызовов, прежде чем мы закроем файл с помощью filehandle.
кортик