Титульная страница   Иерархия классов   Алфавитный указатель   Классы   Файлы   Члены классов   Члены файла   Примеры  

NetworkDrive.cpp

Пример использования классов NetworkDrive, NetworkDrives, Directory, String, Exception. Данный пример демонстрирует простейшую программу, которая выводит на консоль содержимое заданного сетевого диска.

#include <stdio.h>
#include "BGDNet.h"

using BGDNet::NetworkDrive;
using BGDNet::NetworkDrives;
using BGDNet::Directory;
using BGDNet::Exception;

bool checkDrive( const NetworkDrive* pDrv );

int main( int argc, char* argv[] )
{
  if (argc > 2)
  {
    puts("Usage: NetworkDrive.exe [<drive_letter>]");
    return -1;
  }

  char letter = (1 == argc) ? 0 : *argv[1];

  try
  {
    if (letter)
    {
      // Задана буква, проверяем диск:
      NetworkDrive drv(letter);
      if (!checkDrive(&drv))
        printf("%c: invalid drive\n", letter);
    }
    else
    {
      // Буква не задана, выводим все сетевые диски:
      NetworkDrives drvs;
      for (int i = 0; i < drvs.count(); ++i)
        checkDrive(drvs[i]);
    }
  }
  catch (const Exception& e)
  {
    printf("ERROR: %s\n", e.what());
  }
  puts("----------");

  return 0;
}

bool checkDrive( const NetworkDrive* pDrv )
{
  const Directory* pDir = pDrv->mappedDir();
  if (!pDir)
    return false;
  else
  {
    printf("%c --> %s\n", pDrv->drvLetter(), pDir->fullPath().ptr());
    return true;
  }
}

РУП БЕЛГИПРОДОР Документация на BGDNet сгенерирована Mon Apr 1 18:36:52 2002, БЕЛГИПРОДОР ©  2001