KnigaRead.com/

Андрей Попов - Windows Script Host для Windows 2000/XP

На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн Андрей Попов, "Windows Script Host для Windows 2000/XP" бесплатно, без регистрации.
Перейти на страницу:

В листингах 2.48 и 2.49 приведены сценарии на языках JScript и VBScript соответственно, в которых на экран выводятся диалоговые окна, содержащие информацию о сетевых дисках и сетевых принтерах, подключенных к рабочей станции (рис. 2.22).

Рис. 2.22. Выводимая сценарием ListNetworkResources.js информация о подключенных сетевых ресурсах


Листинг 2.48. Вывод списка подключенных сетевых ресурсов (JScript)

/********************************************************************/

/* РРјСЏ: ListNetworkResources.jsВ В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В  */

/* Язык: JScript                                                    */

/* Описание: Вывод подключенных сетевых ресурсов (диски и принтеры) */

/********************************************************************/

var WshNetwork,s,NetwDrives,i,NetwPrinters; //Объявляем переменные

//Создаем объект WshNetwork

WshNetwork = WScript.CreateObject("WScript.Network");

/*****   Вывод списка всех подключенных сетевых дисков  ******/

s="Подключенные сетевые диски:nn";

//Создаем коллекцию с данными о подключенных дисках

NetwDrives = WshNetwork.EnumNetworkDrives();

i=0;

while (i<=NetwDrives.Count()-2) {  //Перебираем элементы коллекции

 //В первом элементе коллекции содержится буква диска,

 //во втором - сетевое имя ресурса и т.д.

В s+=NetwDrives(i)+"В  "+NetwDrives(i+1)+"n";

В i=i+2;

}

WScript.Echo(s);  //Выводим сформированные строки на экран

/******   Вывод списка всех подключенных сетевых принтеров  ******/

s="Подключенные сетевые принтеры:nn";

//Создаем коллекцию с данными о подключенных принтерах

NetwPrinters = WshNetwork.EnumPrinterConnections();

i=0;

while (i<=NetwPrinters.Count()-2) {  //Перебираем элементы коллекции

 //В первом элементе коллекции содержится названия локальных портов,

 //во втором - сетевое имя принтера и т.д.

В s+=NetwPrinters(i)+"В  "+NetwPrinters(i+1)+"n";

В i=i+2;

}

WScript.Echo(s); //Выводим сформированные строки на экран

/*************  Конец *********************************************/

Листинг 2.49. Вывод списка подключенных сетевых ресурсов (VBScript)

'********************************************************************

' РРјСЏ: ListNetworkResources.vbsВ В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В 

' Язык: JScript                                                   

' Описание: Вывод подключенных сетевых ресурсов (диски и принтеры) 

'********************************************************************

Option Explicit

Dim WshNetwork,s,NetwDrives,i,NetwPrinters  ' Объявляем переменные

' Создаем объект WshNetwork

Set WshNetwork = WScript.CreateObject("WScript.Network")

'********   Вывод списка всех подключенных сетевых дисков   *********

s="Подключенные сетевые диски:" & vbCrLf & vbCrLf

' Создаем коллекцию с данными о подключенных дисках

Set NetwDrives = WshNetwork.EnumNetworkDrives()

i=0

While i<=NetwDrives.Count()-2  ' Перебираем элементы коллекции

 ' В первом элементе коллекции содержится буква диска,

 ' во втором - сетевое имя ресурса и т.д.

В s=s & NetwDrives.Item(i) & "В  " & NetwDrives.Item(i+1) & vbCrLf

В i=i+2

Wend

WScript.Echo s   ' Выводим сформированные строки на экран

'********    Вывод списка всех подключенных сетевых принтеров    *******

s="Подключенные сетевые принтеры:" & vbCrLf & vbCrLf

' Создаем коллекцию с данными о подключенных принтерах

Set NetwPrinters = WshNetwork.EnumPrinterConnections()

i=0

While i<=NetwPrinters.Count()-2   ' Перебираем элементы коллекции

 ' В первом элементе коллекции содержится названия локальных портов,

 ' во втором - сетевое имя принтера и т.д.

В s=s & NetwPrinters.Item(i) & "В  " & NetwPrinters.Item(i+1) & vbCrLf

В i=i+2

Wend

WScript.Echo s  'Выводим сформированные строки на экран

'*************  Конец *********************************************

Подключение и отключение сетевых дисков и принтеров

Рмеющиеся РІ локальной сети общедоступные ресурсы (РґРёСЃРєРё Рё принтеры) можно посредством сценария подключить Рє рабочей станции для совместного использования. Подключаемому сетевому РґРёСЃРєСѓ РїСЂРё этом нужно поставить РІ соответствие незанятую Р±СѓРєРІСѓ локального РґРёСЃРєР° (например, если РІ системе уже имеются РґРёСЃРєРё РЎ:, D: Рё Р•: (локальные или сетевые), то сетевой РґРёСЃРє можно подключить РїРѕРґ Р±СѓРєРІРѕР№ F: или K:, РЅРѕ РЅРµ Р•:). Р’ случае подключения сетевого принтера можно либо напрямую соединиться СЃ этим принтером (для печати РёР· приложений Windows), либо поставить РІ соответствие удаленному принтеру локальный РїРѕСЂС‚ (для печати РёР· старых приложений MS-DOS).

Замечание

Сетевые диски и принтеры также можно подключить с помощью Проводника Windows или выполнив соответствующую команду NET USE.

В качестве примера рассмотрим JScript-сценарий MapResources.js (листинг 2.50), в котором производится подключение диска K: к сетевому ресурсу \RS_NT_Serverd и установка связи локального порта LPT1 с сетевым принтером \104_StepankovaHP.

Сначала нужно создать экземпляры объектов WshNetwork и WshShell:

WshNetwork = WScript.CreateObject("WScript.Network");

WshShell = WScript.CreateObject("WScript.Shell");

Для того чтобы подключить сетевой диск к устройству K:, нужно быть уверенным, что с этой буквой уже не связан сетевой диск (иначе произойдет ошибка). Поэтому предварительно отключается сетевой диск с помощью метода RemoveNetworkDrive:

WshNetwork.RemoveNetworkDrive(Drive);

Перейти на страницу:
Прокомментировать
Подтвердите что вы не робот:*