Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Некорректно работающий код (но! не у всех)

Ответить
Настройки темы
CMD/BAT - [решено] Некорректно работающий код (но! не у всех)

Новый участник


Сообщения: 7
Благодарности: 0

Профиль | Отправить PM | Цитировать


По результатам отзыва юзеров, получается так, что вот этот простейший кусок cmd-шника порой работает некорректно:

Код: Выделить весь код
set "SkyrimPrefsINI=%USERPROFILE%\Documents\My Games\Skyrim Special Edition\SkyrimPrefs.ini"
set "PluginsListFolder=%USERPROFILE%\AppData\Local\Skyrim Special Edition"
 
if not exist "%SkyrimPrefsINI%" (
cls
color fc
 echo.
 echo.
 echo *ОШИБКА! SkyrimPrefs.ini не найден!
 echo.
 echo Используйте лаунчер игры для задания настроек, согласно своим предпочтениям.
 echo Перезапустите панель управления сборкой для повторного выполнения данной опции.
 echo.
 echo.
pause
exit
)
 
color f2
 @echo.
 @echo.
 @echo  ■ Копируется отсортированный список загрузки модов...
 if not exist "%PluginsListFolder%" md "%PluginsListFolder%"
 copy /y "Silver Raven mods pack data\Plugins list\plugins.txt" "%PluginsListFolder%\"
 
и т.д.
Файл по указанному пути есть - а ошибка все равно отображаетcя. Я хоть убей не могу понять, как такое может быть. cmd не запускают на ОС старее Win7. Это может быть как-то связано с тем, что имя пользователя написано на кириллице?

Отправлено: 11:51, 14-11-2021

 

Новый участник


Сообщения: 7
Благодарности: 0

Профиль | Отправить PM | Цитировать


Оказывается, ключ реестра Shell Folders - плохой вариант. Не делайте так.
Вот почему: Длинная и печальная история ключа Shell Folders

Решение - использовать Ms JScript:

Код: Выделить весь код
@set @A=0/*&echo off
// Узнаем расположение папок пользователя, через Microsoft JScript
@for /f "tokens=1,2 delims=*" %%A in ('cscript /e:jscript %0') do (
  set "UserDataFolder=%%A\My Games\Skyrim Special Edition"
  set "PluginsListFolder=%%B\Skyrim Special Edition"
)

:: Здесь мой код

*/with(WSH.CreateObject('Shell.Application')){WSH.echo(namespace(5).self.path+'*'+namespace(28).self.path)}

Отправлено: 14:06, 19-11-2021 | #11



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Silver Raven, не «плохой». Нежелательный. Проблема в том, что в пакетных файлах неоткуда брать пути, кроме как из реестра и через задницу. Попросту нет выбора. Так-то можно не извращаться и хоть mshta.exe «прикрутить» вместо гибрида.

Отправлено: 23:21, 19-11-2021 | #12



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Некорректно работающий код (но! не у всех)

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
PowerShell - [решено] Запуск $form сверху окон, но не поверх всех. 9119 Скриптовые языки администрирования Windows 14 21-12-2020 09:27
Затемнённый, но работающий экран maxim16 Непонятные проблемы с Железом 1 22-08-2016 20:15
Зависание компьютера в играх, но не во всех :( vassabi Непонятные проблемы с Железом 7 14-04-2013 13:54
Восстановлена работа PlayStation Network, но не для всех OSZone News Новости информационных технологий 0 15-05-2011 18:30
Тормоза!Но не во всех играх. Сашка13 Непонятные проблемы с Железом 4 05-10-2008 14:22




 
Переход