Написать файл в режиме чистого DOS?

Как мы знаем ВК WriteFile() записывает данные на указанное устройство ввода-вывода в ОС (см. WriteFile)

Я хочу знать, есть ли такой API в чистый душ для этого? (Используя Watcom C …)

Потом я нашел _dos_write() в справочной странице 197 библиотеки Watcom c (см. _dos_write()) и использует системный вызов 0x40 для записи количества байтов данных из буфера, на который указывает буфер, в файл, указанный дескриптором

подсчитывать является unsigned введите, и это означает, что максимальное количество файлов будет 65535.

Мой вопрос: есть ли другие API, которые могут передавать более 65536 байт «один раз» (например, WriteFile() делает) в чистом DOS?

Постскриптум Это НЕ о командной строке в Windows!

0

Решение

65535 байт — это только предел количества байтов, которые мы можем записать / прочитать за один раз за один вызов. Если файл не закрыт, то просто вызовите запись / чтение еще раз с другим местом в оперативной памяти, и файловый счетчик будет перемещен на следующие 65535 байтов файла. Как сказал Джерри Коффин, нам нужно использовать несколько вызовов, прежде чем мы закроем файл дескриптором файла.

кортик

1

Другие решения

Других решений пока нет …