Как да свързвате и изключвате мрежови устройства

Delphi, Интернет и работа в мрежа, Мрежови устройства

За да работите с мрежови устройства (и ресурси като LPT портове) в WIN API 16 и WIN API 32, следните функции:

Мрежов ресурс за монтиране:

  1. NetResourse - име на мрежов ресурс (напр. '\\P166\c')
  2. Парола - парола за достъп до ресурса (ако няма парола, тогава празен низ)
  3. LocalName - името, под което мрежовият ресурс ще се показва на този компютър (например 'F:')

Пример за свързване на мрежово устройство:

Функцията връща код за грешка. За всички кодове най-често използваните константи са предварително дефинирани:

  • NO_ERROR - Няма грешки - успешно завършване
  • ERROR_ACCESS_DENIED - Грешка при достъпа
  • ERROR_ALREADY_ASSIGNED - Вече свързан. Най-често се случва, когато тази функция се извика отново със същите параметри.
  • ERROR_BAD_DEV_TYPE - Невалиден тип устройство.
  • ERROR_BAD_DEVICE - Неправилно устройство, посочено в LocalName
  • ERROR_BAD_NET_NAME - Невалиден мрежов път или мрежово име
  • ERROR_EXTENDED_ERROR - Някаква мрежова грешка (вижте функцията WNetGetLastError за подробности)
  • ERROR_INVALID_PASSWORD - Невалидна парола
  • ERROR_NO_NETWORK - Няма мрежа

Деактивирайте мрежовото споделяне

  1. LocalName - името, под което мрежовият ресурс е бил свързан към този компютър (например 'F:')
  2. ForseMode - дезактивиран режим:
  3. False - правилно изключване. Ако деактивираният ресурс все още се използва, прекъсването на връзката няма да се случи (например файл е отворен на мрежово устройство)
  4. Вярно - високоскоростно неправилно изключване. Ако ресурсът се използва, спирането все още ще се случи и може да доведе до всякакви последствия (от липса на грешки до мъртво увисване)

Функцията връща код за грешка. За всички кодове най-често използваните константи са предварително дефинирани:

  • NO_ERROR - Няма грешки - успешно завършване
  • ERROR_DEVICE_IN_USE - Ресурсът се използва
  • ERROR_EXTENDED_ERROR - Някаква мрежова грешка (вижте функцията WNetGetLastError за подробности)
  • ERROR_NOT_CONNECTED - Посоченото устройство не е мрежово устройство
  • ERROR_OPEN_FILES - Има отворени файлове на мрежовото устройство, което се прекъсва, и параметърът ForseMode=false

Препоръка: когато деактивирате, първо трябва да опитате да деактивирате устройството с параметъра ForseMode=false и в случай на грешка като ERROR_OPEN_FILES да издадете заявка със съобщение, че устройството все още се използва и предложение да го деактивирате принудително, и ако потребителят е съгласен, повторете извикването с ForseMode=true.

СтатиятаКак да свързвате и изключвате мрежови устройства в раздела Интернет и мрежи Мрежови устройства може да бъде полезна за разработчиците на Delphi и FreePascal.

Коментари и въпроси