Некорректно работающий код (но! не у всех)
По результатам отзыва юзеров, получается так, что вот этот простейший кусок cmd-шника порой работает некорректно:
Код:
set "SkyrimPrefsINI=%USERPROFILE%\Documents\My Games\Skyrim Special Edition\SkyrimPrefs.ini" |
Цитата:
Код:
set SkyrimPrefsINI="%USERPROFILE%\Documents\My Games\Skyrim Special Edition\SkyrimPrefs.ini" |
Elven
Цитата:
|
Цитата:
Цитата:
Код:
set "PluginsListFolder=%LOCALAPPDATA%\Skyrim Special Edition" Цитата:
|
Iska
Пока, высланные скриншоты ничего конкретного мне не говорят: https://ibb.co/60Qd56N - попросил убрать @echo off https://ibb.co/qmZxK98 - описанная мной ошибка Опишу cmd-шник подробнее: При запуске проверяется наличие переменной FirstLaunch = true (хранится во внешнем .cfg) после чего запускается определенный набор действий
Код:
set "TempConfig=Silver Raven mods pack data\temp_config.tmp" Многие получают мое заготовленное сообщение о том, что файл SkyrimPrefs.ini не найден, хотя, на самом деле он присутствует по указанному пути. Из-за того, что более-менее подробные данные о ОС дал только один человек, я знаю что у него Win10 x64 и имя профиля написано кириллицей. |
Цитата:
P.S. Могу только предположить, что дело в относительных путях (зависит от способа запуска вашего cmd-файла). |
Цитата:
Код:
dir %SkyrimPrefsINI% && echo "exist" || echo "not exist" Ну и значение %USERPROFILE% не помешает проверить. |
Цитата:
|
Первый (и последующие) запуски происходят по окончанию распаковки на ПК юзера, вот как-то отсюда: https://imgbb.com/fGDXJVV (опять же пример c проблемного ПК)
cmd-шник проверяет наличие SkyrimSE.exe и набора файлов в Silver Raven mods pack data перед началом работы. Foreigner Цитата:
Вот еще отзыв: "лаунчер запускал. SkyrimPrefs.ini лежит по адресу Пользователи/dmitr/Документы/My Games/Skyrim Special Edition. OC 64-битная Windows10, имя пользователя написано латиницей." P.S. Могу дать полный cmd-шник и все файлы к нему, если кто-то захочет познакомиться с чудовищем поближе. |
Вот, еще подсказали, запросить расположение папки документов юзера такой командой:
Код:
for /f "tokens=3" %I in (' reg query "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "Personal" 2^>nul ') do echo. User Documents: "%I" |
Оказывается, ключ реестра Shell Folders - плохой вариант. Не делайте так.
Вот почему: Длинная и печальная история ключа Shell Folders Решение - использовать Ms JScript: Код:
@set @A=0/*&echo off |
Silver Raven, не «плохой». Нежелательный. Проблема в том, что в пакетных файлах неоткуда брать пути, кроме как из реестра и через задницу. Попросту нет выбора. Так-то можно не извращаться и хоть mshta.exe «прикрутить» вместо гибрида.
|
Время: 04:04. |
Время: 04:04.
© OSzone.net 2001-