ОК, поэтому я скачал документацию библиотеки приложений и посмотрел в TCPIP Stack Help.chm
и нашел функцию HTTPIncFile
:
void HTTPIncFile(ROM BYTE* cFile);
Пользователи не должны вызывать эту функциюнапрямую, но вместо этого следует добавить динамические переменные в виде ~ inc: filename.ext ~ в их HTML-код, чтобы включить (например) файл «filename.ext» в указанное место.Утилита MPFS2 Generator будет обрабатывать все остальное.
Таким образом, похоже, что ваш оригинальный синтаксис является единственным документированным.Теперь, хотя в нем сказано не вызывать функцию напрямую, поскольку у вас возникли проблемы, возможно, стоит сделать это, чтобы увидеть, получаете ли вы те же результаты.
Также обратите внимание, что:
Когда curHTTP.callbackPos равен 0, файл открывается и записывается максимально возможное количество байтов.Текущая позиция затем сохраняется в curHTTP.callbackPos и файл закрывается.При последующих вызовах чтение начинается с сохраненного местоположения и продолжается.Как только достигнут конец входного файла, curHTTP.callbackPos устанавливается в 0 для указания завершения.
Это чисто предположение, но, возможно, у вас могут возникнуть проблемы, если вы попытаетесь включитьфайл более одного раза или попробуйте включить один или несколько файлов одновременно.Если файл не включен, это может быть потому, что callbackPos
не был сброшен.Я также предполагал, что вы не пытаетесь изменить файл шаблона, но вы сказали:
определенные элементы на странице регулярно обновляются
Если файлы, которые выесли хотите включить изменения, вы, вероятно, сталкиваетесь с проблемами параллелизма.Возможно, вам придется прибегнуть к блокировке или синхронизации, чтобы убедиться, что этого не произойдет, или попробуйте выполнить ожидание при включении метода, проверяя смещение, пока вы не включите положительное число байтов.