![]() |
переменная среды не определена
Здравствуйте.
Хотел немного переделать под себя скрипт по смене папки пользователей в виндоус в процессе установки. Суть переделки - замена переменными путей до папок, чтобы при изменении пути ввести его 1 раз а не 3 Скрипт запускается из консоли, вызванной по Shift+F10 на экране создания пользователя, при установке ОС код
Код:
@ECHO OFF но возникла проблема - выдает что переменная среды не определена, при этом ругается на переменные: OLD_USERS_DIR и BAK_USERS_DIR подскажите - где ошибка |
Цитата:
Цитата:
2. Указывать каталог со знаками равенства в имени (ваше "D:\= Users =") рискованно. Я бы не стал. Можно хотя бы со знаком подчёркивания, входящим в состав допустимых, типа "D:\_ Users _" -- заодно каталог в списке всплывёт наверх. |
mwz, спасибо.... я слона то у себя в глазу и проглядел =))
|
Цитата:
Код:
SET "NEW_USERS_DIR=D:\= Users =" |
ну про знак "=" - может быть, в итоге сделал так, может кому пригодится:
Код:
@ECHO OFF |
~Cache~, чисто стилевые соображения:
1. Папки создаются без атрибута A. Поэтому снимать, а в дальнейшем устанавливать на них этот атрибут вообще бессмысленно: атрибутом А у файлов, и только файлов, пользуются лишь некоторые программы архивирования (снимают этот атрибут когда файл ими уже заархивирован). Для папок он вообще никакой роли не играет. Атрибуты R, H, S у только что созданной папки также сброшены. 2. Атрибут R (и в некоторых случаях S) для папок несёт только задание для них особых функций (меняет поведение папок при наличии внутри папки соответствующего файла Desktop.ini, описывающего особые свойства папки; в простейшем случае – устанавливает её значок, в более сложных – вообще меняет поведение папки при просмотре её Проводником). Поэтому устанавливать для папок по крайней мере атрибут R без необходимости не следует: он абсолютно не означает, что файлы внутри папок будут доступны только для чтения, или что папку нельзя будет удалить без потверждения. Скрытый текст
Пример: создайте пустую папку, положите в неё файл desktop.ini с содержимым
[.ShellClassInfo] CLSID={645FF040-5081-101B-9F08-00AA002F954E} LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-8964 и любой другой файл (например, пустой test.txt) или пустую папку; затем присвойте в окне CMD этой папке атрибут +R и попробуйте зайти в неё Проводником. |
Время: 21:07. |
Время: 21:07.
© OSzone.net 2001-