Локальные сети персональных компьютеров. Работа с сервером Novell NetWare



                  

  

Создаем набор логических записей, которые



Листинг 24

Блокирование логических записей // Файл loglock\loglock.cpp // // (C) A. Frolov, 1993 // =================================================== #include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <conio.h>
#define BYTE unsigned char #define WORD unsigned int extern "C" int GetNetWareShellVersion(char *,char *, char *);
extern "C" int LogLogicalRecord(char *, BYTE, WORD);
extern "C" int LockLogicalRecordSet(WORD);
extern "C" void ReleaseLogicalRecordSet(void);
extern "C" void ClearLogicalRecordSet(void);
void main(void) { char MajorVersion=0; char MinorVersion=0; char Revision=0; char LogicalRecordName[100]; int ccode; printf("\n*LOGLOCK* (C) Frolov A., 1993\n");
// Проверяем наличие сетевой оболочки asm push si GetNetWareShellVersion(&MajorVersion, &MinorVersion, &Revision);
asm pop si if(MajorVersion == 0) { printf("\nОболочка NetWare не загружена\n");
return; } // Создаем набор логических записей, которые будут заблокированы for(;;) { printf("\nВведите имя логической записи или '-':");
gets(LogicalRecordName);
if(LogicalRecordName[0] == '-') break; // Добавляем логическую запись в набор ccode = LogLogicalRecord(LogicalRecordName, 0, 0);
if(!ccode) printf("Логическая запись %s добавлена к списку\n", LogicalRecordName);
else printf("Ошибка при добавлении %02.2X\n", ccode);
} // Блокируем набор логических записей ccode = LockLogicalRecordSet(0);
if(!ccode) printf("Логические записи заблокированы\n");
else printf("Ошибка при блокировании " "логических записей %02.2X\n", ccode);
printf("Для разблокирования логических записей " " нажмите любую клавишу\n");
getch();
// Разблокируем набор логических записей ReleaseLogicalRecordSet();
// Удаляем набор логических записей ClearLogicalRecordSet();
}

Содержание  Назад  Вперед