Ander_73
- Стаж: 7 лет 11 месяцев
- Сообщений: 3950
- Репутация:127[+] [-]
|
loban_ser, красотень!
|
Отправлено: 06-Июн-2022 11:56
(спустя 5 месяцев 19 дней)
serg130270
- Стаж: 5 лет 10 месяцев
- Сообщений: 24
- Репутация:0[+] [-]
|
Здравствуйте ДОБРЫЕ ЛЮДИ,ФОРУМЧАНЕ!Помогите мне пожалуйста, можно ли изменить код в этом скрипте, чтобы WA-аддоны от abbodi1406 находились в папке с названием addon и распаковывались туда, в папку addon, а не в корень где лежит скрипт Помогите пожалуйста.cd /d "%~dp0" set /a _t=0 set /a _c=0 if exist "*.WA" for /f "delims=" %%# in ('dir /b /os *.WA') do call set /a _t+=1 if %_t% equ 0 exit /b for /f "delims=" %%# in ('dir /b /os *.WA') do (set "addon=%%#"&set "dest=%%~n#"&call :prepare) echo. echo Done. echo Press any key to exit. pause >nul exit /b :prepare if exist "%dest%" ( if exist "%dest%\Registry\NSudoC.exe" (exit /b) else (rd /s /q "%dest%") ) set /a _c+=1 echo %_c%/%_t%: %addon% echo. bin\7zr x "%addon%" -o"%dest%" * -r >nul if not exist "%dest%\Tasks.txt" rd /s /q "%dest%"&exit /b md "%dest%\Registry\" copy /y bin\NSudoC.exe "%dest%\Registry\" >nul copy /y bin\Integrator.cmd "%dest%\" >nul copy /y bin\Reg2Wim.cmd "%dest%\" >nul pushd "%dest%\" findstr /i ".dll" Tasks.txt >nul && for /f "tokens=1,2 delims=:" %%a in ('findstr /i ".dll" Tasks.txt') do ( if not exist "Files\%%b" md "Files\%%b" move /y "%%a" "Files\%%b\" >nul ) for /f "tokens=1,2 delims=:" %%a in ('findstr /i ":" Tasks.txt ^|findstr /i /v ".dll"') do ( if not exist "Files\%%b" md "Files\%%b" move /y "%%a" "Files\%%b\" >nul ) for /f "delims=" %%# in ('dir /b *.reg') do call Reg2Wim.cmd %%# move /y *.reg Registry\ >nul del /f /q Reg2Wim.cmd Tasks.txt popd exit /b
Последний раз редактировалось: serg130270 (2022-06-06 12:17), всего редактировалось 1 раз
|
Отправлено: 08-Июн-2022 08:29
(спустя 1 день 20 часов)
dimo70
- Стаж: 7 лет 1 месяц
- Сообщений: 3793
- Репутация:27[+] [-]
- Откуда: BG
|
Есть у кого батник для фикса папки Temp в Windows 7-10? Часто случается Temp перестает работать нормально и выходят всякие ошибки, от невозможность записать или запустить екзешники. Искал в сети, но там есть только обьяснения куда что изменять и права на темп папку предоставить, но готовый код так и не нашел.
_________________ Подпись отключена за нарушение правил форума
|
rekshd
- Стаж: 6 лет 1 месяц
- Сообщений: 331
- Репутация:7[+] [-]
|
95479Часто случается Temp перестает работать нормально и выходят всякие ошибки Это случайно не после использования Primo RAM Disk произошло ? А то Primo любит переносить переменные Temp на виртуальный сверхвысокоскоростной диск в RAM. Из за этого и косяки начинают лезть. Я конечно понимаю, что сделано это из лучших побуждений - типа разместить временные файлы в высокопроизводительном пространстве - но многие программы так не думают Причём это специфика не тока Primo RAM Disk, но и других подобных программ. Посему, я даже скрипты\проги PrimoRamDisk x64 by Nikzzzz и by Alexa переделал малость так, чтоб Temp оставался там, где я его изначально разместил (у меня он всегда на C:\Temp) А раньше приходилось после пользования виртуальным диском в памяти (в случае переноса прогой туды папок Temp) применять для возврата темпов на исходное место простеший кмдешник следующего содержания:
:: Запускаем от Админа >nul 2>&1 reg.exe query HKU\S-1-5-19|| ( mshta "vbscript:CreateObject("Shell.Application").ShellExecute("%~fs0", "", "", "runas", 1) & Close()" goto :eof ) REM Проверяем наличие/доступность папки C:\Temp, если папки нет - создаём, если не удаётся создать - выход pushd "c:\Temp" && popd || (md "c:\Temp" ||exit) REM Задаём переменные окружения TEMP и TMP текущего пользователя setx TEMP c:\Temp setx TMP c:\Temp REM Задаём переменные окружения TEMP и TMP компьютера setx TEMP c:\Temp /M setx TMP c:\Temp /M :: Pause exit Он то тебе наверно и нужен ...
|
dimo70
- Стаж: 7 лет 1 месяц
- Сообщений: 3793
- Репутация:27[+] [-]
- Откуда: BG
|
rekshd, ты точно заметил. Сейчас да, но прежде были и другие подобные случаи с Temp, не имеющие отношение с примо рам. Насколько понимаю код переназничавает временные папки в C:\TEMP. Этот код во всех случаях с temp поможет, или не совсем?
_________________ Подпись отключена за нарушение правил форума
|
rekshd
- Стаж: 6 лет 1 месяц
- Сообщений: 331
- Репутация:7[+] [-]
|
Да, код поможет тока в том случае, если программа, сотворившее это безобразие с переносом папок темп в другое место, к моменту запуска кода уже выключена\перестала воздействовать на систему.
|
Отправлено: 08-Июн-2022 18:44
(спустя 2 часа 16 минут)
dimo70
- Стаж: 7 лет 1 месяц
- Сообщений: 3793
- Репутация:27[+] [-]
- Откуда: BG
|
rekshd, в принципе прога Primo Ramdisk от nikzzzz работает супер и на живую систему и на пешниках, только если на живую надо при выключения сделать возврат переменной %temp% из рамдиска на свое место, ну или через твоего батника в C:\Temp. Я даже попробую сделать репак такой и обновить версию.
_________________ Подпись отключена за нарушение правил форума
|
JuraAD
- Стаж: 3 года 6 месяцев
- Сообщений: 85
- Репутация:27[+] [-]
|
вообще системные переменный для сессий пользователей, процессов и системы устанавливаются в реестре и установкой "set", по истории поищите environment (так называемое окружение) есть для каждого процесса область в памяти, но исходные устанавливаются в реестре... system: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment users: HKEY_CURRENT_USER\Environment Работает так: 1. Системные установки наследуются для пользователей в системе; 2. Пользовательские перекрывают системные, наследуются для процессов (пользователь может переопределить/добавить для окружения пользователя); 3. в ходе запуска и работы процесса (bat и т.п. - могут сформировать свое окружение переопределить/добавить для окружения процесса "set")... - как-то так... (подробности нужны? -))) или все понятно?...) зы: TMP и TEMP переменные (историческое название еще с DOS) в выни начинают устанавливаться в системном окружении... зызы: там, не там написал? или в https://usbtor.ru/viewtopic.php?t=1994&start=915 -)))
|
Отправлено: 21-Авг-2022 21:56
(спустя 2 месяца 12 дней)
hseg0
- Стаж: 2 года 11 месяцев
- Сообщений: 4
- Репутация:0[+] [-]
|
Здравствуйте. Помогите,пожалуйста, решить задачу. Хотелось бы переименовывать ПК каждый раз на рандомное имя не менее 12 символов, но не более 15: буквы заглавные и цифры, при помощи bat-файла, не редактируя сам bat-файл. В сети решение для этой задачи не нашел, разве только это (рандом для 5-ти символов):@set @a=0/* @for /f %%n in ('cscript /e:jscript %0') do @>nul wmic computersystem where "Name='%COMPUTERNAME%'" call Rename '%%~nn' @exit */WSH.echo(WSH.CreateObject('Scripting.FileSystemObject').getTempName().slice(3)) Спасибо за помощь.
|
Ander_73
- Стаж: 7 лет 11 месяцев
- Сообщений: 3950
- Репутация:127[+] [-]
|
|
dimo70
- Стаж: 7 лет 1 месяц
- Сообщений: 3793
- Репутация:27[+] [-]
- Откуда: BG
|
Подскажите как сделать проще? Ситуация такая: Загружаю с флешку оригинальный boot.wim из Win11 22H2 например. Открываю командную строку. Сейчас нужно мне запустить Total Commander из корня флешки. Я делаю так: пишу diskpart, потом команда list volume, чтоб увидеть букву присвоения флешки. Потом закрываю Exit и пишу соответствующую "букву:" и TC - чтоб стартовать Tоtal Comander-а. Возможно ли это все сделать батником, или как то стартовать TC по проще напрямую?
_________________ Подпись отключена за нарушение правил форума
|
JuraAD
- Стаж: 3 года 6 месяцев
- Сообщений: 85
- Репутация:27[+] [-]
|
WMI должно работать... на обрезаных системах может послать... wmic logicaldisk /? wmic logicaldisk get /? wmic logicaldisk get deviceid,volumename,description Можно прочитать ветку реестра HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices: но там нужно сопоставлять строчки типа: "\\??\\Volume{542e8d6c-e794-11ec-bfc2-d050991566cb}"=hex:... и: "\\DosDevices\\D:"=hex:...
|
cartmenezz
- Стаж: 9 лет 4 месяца
- Сообщений: 527
- Репутация:14[+] [-]
- Откуда: Калининград
|
96620Возможно ли это все сделать батником Приветствую. Как-то так:@echo off set n=\TC.exe for %%A in ( C D E F G H I J K L M N O P Q R S T U V W X Y Z ) do dir "%%A:%n%" >nul 2>nul&& ( start "" "%%A:%n%" exit ) exit TC.exe должен лежать в корне диска, в ином случае нужно поправить путь в строке "set n=\TC.exe" (например: set n=\папка1\папка2\TC.exe)
|
Страница 7 из 8
Текущее время: 28-Янв 06:24
Часовой пояс: UTC + 3
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете прикреплять файлы к сообщениям Вы можете скачивать файлы
|
|