Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   При выполнении скрипта создаётся побочная папка в системной директории (http://forum.oszone.net/showthread.php?t=204133)

bish 07-04-2011 07:59 1652733

При выполнении скрипта создаётся побочная папка в системной директории
 
Есть код:
Код:

...
Set skin="%~dp0skins"
Set PlugPath=%Path_1%\plugins
For /F "usebackq delims=" %%C In (` Dir %skin% /AD /B /ON 2^>nul `) Do (
        For %%B In ("%~dp0skins\%%C\*.zip") Do (
                Call "%~dp07z.exe" x "%%B" -o"%PlugPath%\%%C\skins" -aoa >nul
        )
)
...

При выполнении скрипта с этим куском кода создаётся папка "C:\WINDOWS\system32\skins". Подскажите, почему она создаётся ? Как исправить код, чтобы этого не было ? В остальном скрипт делает всё правильно, т.е. распаковывает архивы куда надо, вот только этот побочный нежелательный эффект.

gora 07-04-2011 09:53 1652815

Цитата:

Цитата bish
Подскажите, почему она создаётся ? »

В Вашем куске отсутствует определение переменной %Path_1%, что в ней? Хорошо бы еще знать, где расположен сам скрипт, дабы определится со значением в %~dp0 (может он у Вас расположен в C:\WINDOWS\system32\ )
Попробуйте перед Call поставить Echo и убрать >nul в конце строки. Вы увидите возможные ошибки в путях в этой строке.

bish 07-04-2011 10:29 1652852

gora,
Переменная %Path_1% определяется до этого куска кода из реестра - путь установки программы. Она определяется правильно - проверил командой Echo. Сам скрипт должен запускаться из %Temp% . Возможно из-за этого и происходит казус, т.к. проверял скрипт запуском из другой папки. Сейчас проверим, о результатах сообщу.

Проверил: скрипт делает всё как задумано, побочной папки не создаётся, ошибок в путях при распаковке нет.

Чтобы было понятнее опишу задачу: скрипт в реальных условиях должен установить скины к программе, которая уже установлена в системе; скрипт, папка skins с консольным архиватором 7z упакованы в SFX 7-zip архив, в конфигурационном файле которого и прописан запуск скрипта. И вот тут то и создаётся злосчастная папка в системной директории. Главное, свою задачу скрипт выполняет. Непонятно ...


Время: 08:39.

Время: 08:39.
© OSzone.net 2001-