Функция GetPreferredConnectionID() возвращает номер канала предпочтительного сервера или 0, если предпочтительный сервер не был задан.
Напомним, что номер канала соответствует индексу в таблице номеров каналов и лежит в пределах от 1 до 8.
Функция SetPreferredConnectionID() предназначена для определения предпочтительного сервера. Номер канала для сервера, который должен стать предпочтительным, передается функции в качестве параметра:
void SetPreferredConnectionID(BYTE ConnectionID);
Если у вас нет библиотеки NetWare C Interface, вы можете создать канал с сервером или удалить его с помощью функции F1h прерывания INT21h.
Перед вызовом функции вам нужно загрузить регистры следующим образом:
На входе: | AH | = | F1h; |
AL | = | 0 - создать канал с файл-сервером, использовать номер канала, заданный в регистре DL;
1 - отключить пользователя и удалить канал, номер которого задан в регистре DL; 2 - отключить пользователя от файл-сервера, номер канала которого задан в регистре DL; |
|
DL | = | Номер канала. | |
На выходе: | AL | = | Код ошибки или 0, если операция выполнена без ошибок. |
При помощи функции F0h прерывания INT 21h вы сможете определить первичный и текущий сервер, а также задать новый первичный или предпочтительный сервер:
На входе: | AH | = | F0h; |
AL | = | 0 - установить предпочтительный файл-сервер, номер канала которого задан в регистре DL;
1 - определить текущий предпочтительный сервер, номер сервера возвращается в регистре AL; 2 - получить в регистре AL номер текущего сервера; 4 - установить первичный файл-сервер, номер канала которого задан в регистре DL; 5 - получить в регистре AL номер первичного файл-сервера; |
|
DL | = | Номер канала. | |
На выходе: | AL | = | Код ошибки или 0, если операция выполнена без ошибок. |