Останов файл-сервера
Иногда программе может потребоваться завершить работу файл-сервера. Это можно сделать при помощи функции DownFileServer(): int DownFileServer(int ForceFlag);
Параметр ForceFlag определяет, надо ли завершать работу файл-сервера, если есть рабочие станции, открывшие файлы в сетевых каталогах.
Если параметр установлен в нуль, при попытке завершить работу файл-сервера возвращается код ошибки FFh, если имеются открытые пользователями файлы.
Если значение параметра равно единице, сервер завершает свою работу в любом случае.
В случае успешного завершения функция возвращает нулевое значение. Если эта функция вызвана пользователем, не имеющим прав оператора консоли, возвращается код ошибки C6h.
Вместо функции DownFileServer() можно использовать функцию E3h прерывания INT 21h:
На входе: | AH | = | E3h; |
DS:SI | = | Адрес буфера запроса; | |
ES:DI | = | Адрес буфера ответа. | |
На выходе: | AL | = | Код ошибки или 0, если операция завершилась без ошибок. |
Буфер запроса: struct REQUEST { WORD PacketLength; // размер пакета запроса BYTE Function; // должно быть равно 211 BYTE ForceFlag; // FFh - завершить в любом случае // 00h - завершить, если нет открытых // файлов };
Буфер ответа: struct REPLAY { WORD PacketLength; // размер пакета };