нужен для создания временных подключений (не сохраняющихся после завершения сеанса пользователя). Если бы подключения были постоянными (
/PERSISTENT:YES
), то при следующем входе пользователя в систему возникла бы ошибка (повторное использование уже имеющегося подключения).
Наконец, папка C:\TEXT предоставляется в общее пользование командой
NET SHARE
:
NET SHARE MyTxt=C:\TEXT
Интерактивный
выбор программ автозагрузки
Как известно, в подменю Программы (Programs) стартового меню Windows имеется пункт Автозагрузка (Startup), в который можно поместить ярлыки тех программ, которые должны быть автоматически запущены при регистрации пользователя в системе. Однако в процессе загрузки своего профиля пользователь не имеет возможности запустить только какие-либо определенные программы из папки автозагрузки — можно либо запустить все программы, либо не запускать ни одной (для этого необходимо в процессе регистрации в системе удерживать нажатой клавишу <Shift>).
Мы напишем сценарий Logon.js, с помощью которого пользователь при входе сможет выбрать запускаемые программы; назначив этот сценарий в качестве сценария входа групповой политики, мы сделаем процесс автозагрузки приложений интерактивным.
Начнем мы с того, что создадим в каталоге %SystemDrive%\Documents and Settings\All Users\Главное меню, в котором хранятся ярлыки программ из стартового меню для всех пользователей, папку Выборочная автозагрузка и поместим туда ярлыки для нужных приложений (рис. 11.17).
После этого ярлыки из обычной папки Автозагрузка нужно убрать. Рассмотрим теперь алгоритм работы сценария входа Logon.js.
Вначале нужно определить путь к папке выборочной автозагрузки (переменная
//Создаем объект Folder для папки выборочной автозагрузки
Folder=FSO.GetFolder(PathStartup);
//Создаем коллекцию файлов каталога выборочной автозагрузки
Files=new Enumerator(Folder.Files);
После этого мы выводим на экран диалоговое окно с вопросом, нужно ли запустить программы из папки автозагрузки в пакетном режиме, т.е. все сразу (рис. 11.18).
Рис. 11.18.
Выбор режима автозагрузки программ (пакетный или интерактивный)
В зависимости от нажатой в диалоговом окне кнопки мы присваиваем логическое значение переменной
IsRunAll
, определяющей режим автозагрузки программ (если
IsRunAll
равно
false
, то для каждой программы будет выдаваться запрос на ее запуск, в противном случае все программы запускаются без предупреждения):
//Выводим запрос на запуск сразу всех программ
Res=WshShell.Popup("Запустить сразу все программы?", 0,
"Выборочная автозагрузка", vbQuestion+vbYesNo);
//Определяем, нажата ли кнопка "Да"
IsRunAll=(Res==vbYes);
Далее в цикле
while
производится перебор всех файлов из коллекции
Files
; переменная
File
соответствует текущему файлу в коллекции:
//Цикл по всем файлам каталога выборочной автозагрузки
while (!Files.atEnd) {
//Создаем объект File для текущего элемента коллекции
File=Files.item;
//Переходим к следующему файлу в коллекции
Files.moveNext;
}
Если ранее был выбран интерактивный режим запуска программ (переменная
IsRunAll
равна
false
), то мы выводим запрос на запуск текущего файла (рис. 11.19):
//Обнуляем переменную Res Res=0;
if (!IsRunAll) //Программы нужно запускать по одной