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


Листинг 21



Листинг 21

Блокирование файлов // Файл flock\flock.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 LogFile(char *, BYTE, WORD); extern "C" int LockFileSet(WORD); extern "C" void ReleaseFileSet(void); extern "C" void ClearFileSet(void); void main(void) { char MajorVersion=0; char MinorVersion=0; char Revision=0; char FilePath[255]; int ccode; printf("\n*FLOCK* (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(FilePath); strupr(FilePath); if(FilePath[0] == '-') break; // Добавляем файл в набор ccode = LogFile(FilePath, 0, 0); if(!ccode) printf("Файл %s добавлен к списку\n", FilePath); else printf("Ошибка при добавлении %02.2X\n", ccode); } // Блокируем набор файлов ccode = LockFileSet(0); if(!ccode) printf("Файлы заблокированы\n"); else printf("Ошибка при блокировании " "файлов %02.2X\n", ccode); printf("Для разблокирования файлов нажмите любую клавишу\n"); getch(); // Разблокируем набор файлов ReleaseFileSet(); // Удаляем набор файлов ClearFileSet(); }







Начало  Назад  Вперед