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


Программа FSCAN


Приведем программу FSCAN (листинг 17), которая выводит список файлов, расположенных в каталоге, путь к которому задается в качестве параметра при запуске программы. Для каждого найденного в каталоге файла программа выводит имя файла, его размер, байт атрибутов и байт расширенных атрибутов, а также имя пользователя, создавшего файл.

// =================================================== // Листинг 17. Просмотр списка файлов в каталоге // Файл fscan\fscan.cpp // // (C) A. Frolov, 1993 // ===================================================

#include <stdlib.h> #include <stdio.h> #include <string.h> #include <time.h>

#define BYTE unsigned char #define WORD unsigned int

extern "C" int GetNetWareShellVersion(char *,char *, char *); extern "C" int _ScanFileInformation(BYTE, char *, BYTE, int *, char *, BYTE *, BYTE *, long *, char *, char *, char *, char *, long *); extern "C" int GetBinderyObjectName(long, char *, WORD *);

void main(int argc, char *argv[]) {

char MajorVersion=0; char MinorVersion=0; char Revision=0;

int SequenceNumber; char FileName[16]; BYTE FileAttributes; BYTE ExtendedFileAttributes; long FileSize; BYTE CreationDate[2]; BYTE LastAccessDate[2]; BYTE LastUpdateDateAndTime[4]; BYTE LastArchiveDateAndTime[4]; long FileOwnerID;

int ccode;

char ObjectName[48]; WORD ObjectType;

printf("\n*FSCAN* (C) Frolov A., 1993\n");

// Проверяем наличие сетевой оболочки

asm push si GetNetWareShellVersion(&MajorVersion, &MinorVersion, &Revision); asm pop si

if(MajorVersion == 0) { printf("\nОболочка NetWare не загружена\n"); return; }

// В качестве аргумента необходимо задать // путь к просматриваемому каталогу в виде SYS:USERS\*

if(argc < 2) { printf("Укажите путь к каталогу, " "например: dirscan sys:users\\*\n"); return; } printf("Список файлов в каталоге %s\n", argv[1]); printf("--------------------------------------------" "-------------\n"); printf("Имя \tРазмер\tАтрибуты\tВладелец\n"); printf("--------------------------------------------" "-------------\n");




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



Книжный магазин