[Цитировать]

    nikzzzz
  • 215
  • Стаж: 9 лет 2 месяца
  • Сообщений: 3114
  • Репутация:127

    [+] [-]
Скрипт создает RamDisk и при возможности, переносит на него %Temp%
Совместимые версии win7-win10 x86/x64
Не требует дополнительных файлов и записей в реестре (если они уже есть, желательно их удалить)
==========================================================================
Формула расчета размера
X64
Size = (FreeMemory - 512) * .8
FreeMemory - свободная память
512 - зарезервировано под систему
Если Size < 64 то Size = 8
Если Size >= 64 то %Temp% создается на RamDisk, иначе на системном диске
X86
Под систему резервируется 384 Mb, больше отличий от X64 нет
==========================================================================
Создается динамический диск, после удаления с него файлов память автоматически освобождается !!! (на это требуется 5-10 секунд).
Вложение


Последний раз редактировалось: nikzzzz (2020-01-29 08:10), всего редактировалось 4 раз(а)

[Цитировать]

    Hunter23071985
  • 874
  • Стаж: 8 лет 10 месяцев
  • Сообщений: 152
  • Репутация:6

    [+] [-]
72131Скрипт сделан исключительно для использования в WinPe сборках и заточен именно под них
Понял, извиняюсь, но что-то все кинулись использовать под реальной ОС, забыв про WinPE - штука то полезная и для реальной ОС тоже. )))

[Цитировать]

    nikzzzz
  • 215
  • Стаж: 9 лет 2 месяца
  • Сообщений: 3114
  • Репутация:127

    [+] [-]
Hunter23071985,
72136штука то полезная и для реальной ОС тоже.
Так для реальной OS есть Primo RamDisk, из которого утилита и сделана.

[Цитировать]

    Hunter23071985
  • 874
  • Стаж: 8 лет 10 месяцев
  • Сообщений: 152
  • Репутация:6

    [+] [-]
nikzzzz, в качестве ответа могу лишь добавить цитату:
КМК так удобнее.
Нажимаешь на екзешник - подключается рам диск. Запускаеш батник - изчезает.
Это действительно так, ни добавить, ни убавить.

[Цитировать]

    dimo70
  • 17296
  • Стаж: 6 лет 4 месяца
  • Сообщений: 3990
  • Репутация:26

    [+] [-]
  • Откуда: BG
Hunter23071985, в реальной системе есть только одна проблеммка пока. Если удалить рам диск %temp% перестает работать и приходиться перезагружать систему.
nikzzzz, проблемма с етой ссылки, что нужно там заплатить. ab

_________________
Подпись отключена за нарушение правил форума

[Цитировать]

    Hunter23071985
  • 874
  • Стаж: 8 лет 10 месяцев
  • Сообщений: 152
  • Репутация:6

    [+] [-]
в реальной системе есть только одна проблеммка пока. Если удалить рам диск %temp% перестает работать и приходиться перезагружать систему.
Так я потому и написал пост, где попросил сделать "выключатель".
Каждая строка там - не простая "хотелка". Но, если утилита не для этого, то и Бог с ним.

[Цитировать]

    dimo70
  • 17296
  • Стаж: 6 лет 4 месяца
  • Сообщений: 3990
  • Репутация:26

    [+] [-]
  • Откуда: BG
Hunter23071985, мда, так ведь. ac

_________________
Подпись отключена за нарушение правил форума

[Цитировать]

    vovan1982
  • 214
  • Стаж: 9 лет 2 месяца
  • Сообщений: 1099
  • Репутация:76

    [+] [-]
  • Откуда: Ростов-на-Дону
loban_ser, немного подправил Ваш скрипт (строку после FOR /f):
@Echo off
Color 17
cd /d "%~dp0"
Reg.exe add "HKLM\SYSTEM\Setup" /v "SystemSetupInProgress" /t REG_DWORD /d "1" /f
for /f "tokens=1 delims=# " %%a in ('rxprd.exe ls') do set "index=%%a"
rxprd.exe del %index% -s
setx Temp %LOCALAPPDATA%\Temp&setx TMP %LOCALAPPDATA%\Temp
Reg.exe add "HKLM\SYSTEM\Setup" /v "SystemSetupInProgress" /t REG_DWORD /d "0" /f
Exit /B

[Цитировать]

    loban_ser
  • 17796
  • Стаж: 6 лет 2 месяца
  • Сообщений: 578
  • Репутация:24

    [+] [-]
vovan1982,
aa

[Цитировать]

    loban_ser
  • 17796
  • Стаж: 6 лет 2 месяца
  • Сообщений: 578
  • Репутация:24

    [+] [-]
У меня вопрос, в ядре его нужно подключать уже после выполнения LetterSwap?
Пробовал, он все замечательно подключается, но при подключении программ меняется буковка на на D и хоть лопни потом не изменить

[Цитировать]

    dimo70
  • 17296
  • Стаж: 6 лет 4 месяца
  • Сообщений: 3990
  • Репутация:26

    [+] [-]
  • Откуда: BG
Скрипт проверил на Windows 10. С темп потом проблем появился.
Скрипт только для WinPE работает? Или просто нужно перезагрузить компьютер после применения?

Комментарий от vovan1982


Какой скрипт, что за скрипт. Ничего не понятно.

_________________
Подпись отключена за нарушение правил форума

[Цитировать]

    nikzzzz
  • 215
  • Стаж: 9 лет 2 месяца
  • Сообщений: 3114
  • Репутация:127

    [+] [-]
loban_ser,
72177У меня вопрос, в ядре его нужно подключать уже после выполнения LetterSwap?
LetterSwap должна выполняться, когда все буквы уже смонтированы, то-есть после создания RamDisk
72177но при подключении программ меняется буковка на на D
Значит, у вас буковки меняет еще какая-то программа, скорее всего какой-то скрипт от conty9.
dimo70,
72180Скрипт только для WinPE работает?
Скрипт написан под WinPe, на реальной системе его применять не рекомендуется.

[Цитировать]

    loban_ser
  • 17796
  • Стаж: 6 лет 2 месяца
  • Сообщений: 578
  • Репутация:24

    [+] [-]
nikzzzz,
LOGS %WinDir%\System32\Pecmd.log
CALL OSInit
CALL PreShell
//CALL PinTo
CALL LoadShell
//CALL AudioInit
CALL Shortcuts
CALL PostShell
CALL NetInit
Exit
////////////////////////////////////////////////////////////////////////////////////////////////
_SUB OSInit
DISP W1024 H768 B32 F60
logo %SystemRoot%\logo.jpg
TEXT System configuration 10PEx64, Please Wait ...... #0xFFFFFF L60 T40 $20*
TEAM EXEC !%SystemRoot%\system32\winpeshl.exe|INIT IU,3000|FONT %SystemRoot%\Fonts,0
NUMK 1
_END
////////////////////////////////////////////////////////////////////////////////////////////////
_SUB PreShell
`=============================== RAM_DISK (Imdisk) ===============================
EXEC !%SystemRoot%\system32\AccessGain All Drives_attach.cmd
//EXEC =!%SystemRoot%\system32\RamDisk.cmd
EXEC =!au3381.exe PrimoRamDisk.a3x
EXEC !%SystemRoot%\system32\Autorun.cmd
//TEAM IFEX MEM=?,MemA|ENVI TEnvi=NTFS|CALC #DSize=(%MemA%-128)*6/10
//IFEX $%DSize%>8192,CALC DSize=8192!IFEX $%DSize%<256,TEAM CALC DSize=4|PATH X:\Temp|ENVI TEnvi=FAT
//RAMD ImDisk,L%DSize%,%TEnvi%,B:,RAMDisk
IFEX X:\TEMP,TEAM ENVI PT=X:\TEMP|FILE --force B:\Temp!TEAM ENVI PT=B:\TEMP|PATH %PT%
TEAM EXEC =!setx.exe -m Temp %PT%|EXEC =!setx.exe -m Tmp %PT%
TEAM REGI HKCU\Environment\TEMP=%PT%|REGI HKCU\Environment\TMP=%PT%
REGI HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\TEMP=%PT%
REGI HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\TMP=%PT%
//REGI HKU\S-1-5-18\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders\Cookies=%PT%\Cookies
//REGI HKU\S-1-5-18\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders\Cache=%PT%\Temporary Internet Files
TEAM ENVI $TEMP=%PT%|ENVI $TMP=%PT%
DEVI %WinDir%\inf\hdaudio.inf
// Fix Screen resolution and Show Desktop. NoWait Hide
EXEC !%WinDir%\System32\FixScreen.exe
TEXT Снимок экрана, нажмите (F9) ...#0xFFFFFF L60 T70 $20*
_END
////////////////////////////////////////////////////////////////////////////////////////////////
_SUB Shortcuts
TEAM HOTK Ctrl + Alt + C,CMD.EXE|HOTK Alt + R,PECMD.EXE SHUT R|HOTK #112,PECMD.EXE|HOTK #0x78,pecmd.exe load %windir%\snap.wcs
LINK %Desktop%\Change Explorer Theme,%WinDir%\system32\hiderun.exe,%WinDir%\System32\SwitchTheme.cmd,%WinDir%\System32\shell32.dll#174
_END
////////////////////////////////////////////////////////////////////////////////////////////////
_SUB PinTo
_END
////////////////////////////////////////////////////////////////////////////////////////////////
_SUB LoadShell
TEAM FORX msi*.dll,TEnvi,0,CALL $%TEnvi%|EXEC *msiexec.exe /register
EXEC !reg.exe import VC1064.reg
EXEC !reg.exe import PE3_CUSTOM.reg
EXEC !reg.exe import Cmd.reg
EXEC !%WinDir%\System32\DPI.CMD
EXEC !X:\Program Files\Imagine\Imagine64.EXE /assocext /regcontextmenu
EXEC %WinDir%\System32\ctfmon.exe
EXEC =!au3381.exe LetterSwap.a3x /auto /log %temp%\LetterSwap.log
TEAM SHEL %Windir%\explorer.exe|LOGO|TEXT
_END
////////////////////////////////////////////////////////////////////////////////////////////////
_SUB PostShell
EXEC !au3381.exe %windir%\PsMgr.a3x
// Hide start menu Startup folders
//EXEC !%windir%\PsMgr.exe
EXEC au3381.exe %windir%\System32\PinTool.au3 -debug %Windir%\System32\Pecmd.ini
EXEC !%WinDir%\System32\attrib.exe +s +h "X:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup"
EXEC !%WinDir%\System32\attrib.exe +s +h "X:\Users\Default\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup"
// Remove desktop.ini
IFEX %Desktop%\desktop.ini,FILE %Desktop%\desktop.ini
IFEX X:\Users\Default\Desktop\desktop.ini,FILE X:\Users\Default\Desktop\desktop.ini
IFEX X:\Users\Public\Desktop\desktop.ini,FILE X:\Users\Public\Desktop\desktop.ini
IFEX X:\Users\Administrator\Desktop\desktop.ini,FILE X:\Users\Administrator\Desktop\desktop.ini
FORX \SSTR\MInst\MInst.exe,Exefile,0,LINK %Desktop%\MInst(SSTR),"%Exefile%"
EXEC !madplay.exe -Q -A-18 "%SystemRoot%\Media\Startup.mp3"
_END
////////////////////////////////////////////////////////////////////////////////////////////////
_SUB AudioInit
// Install HDAudio driver sound cards
// Play Startup sound (Commented if mute is selected)
_END
////////////////////////////////////////////////////////////////////////////////////////////////
_SUB NetInit
//EXEC =@!%WinDir%\System32\Drvload.exe %WinDir%\inf\athw8x.inf %WinDir%\inf\netathr10x.inf %WinDir%\inf\netathrx.inf %WinDir%\inf\netbc63a.inf %WinDir%\inf\netbc64.inf %WinDir%\inf\netrtwlane.inf %WinDir%\inf\netrtwlane_13.inf %WinDir%\inf\netrtwlanu.inf %WinDir%\inf\netwbw02.inf %WinDir%\inf\netwew00.inf %WinDir%\inf\netwew01.inf %WinDir%\inf\netwlan92de.inf %WinDir%\inf\netwlv64.inf %WinDir%\inf\netwns64.inf %WinDir%\inf\netwsw00.inf %WinDir%\inf\netwtw02.inf %WinDir%\inf\netwtw04.inf %WinDir%\inf\netwtw06.inf
EXEC @Pecmd Load %WinDir%\system32\PecmdNet.ini
EXEC !%WinDir%\System32\PENetwork.exe
_END
////////////////////////////////////////////////////////////////////////////////////////////////
[PINTOOL]
TaskBar0=%SystemRoot%\System32\cmd.exe||||||||
TaskBar8=%SystemRoot%\FreeVK.exe||||||||
TaskBar9=%SystemRoot%\Explorer.exe||||||||
@Echo off
start /b /w _ShowHide.exe ext
start "" /b "X:\Program Files\Classic Shell\ClassicStartMenu.exe" -xml "X:\Program Files\Classic Shell\MenuSettings.xml"
start "" /b "X:\Program Files\Classic Shell\ClassicStartMenu.exe"
drvload.exe %SystemRoot%\inf\battery.inf
Echo Load Audio drivers
drvload.exe %SystemRoot%\inf\hdaudio.inf
drvload.exe %SystemRoot%\inf\c_monitor.inf %SystemRoot%\inf\monitor.inf >nul
start /b /w state.cmd
start /b /w cmd.exe /c "powercfg -import %Windir%\System32\plan.pow d3a094af-8cd8-44cf-ad7b-15f8062c3432"
start /b /w cmd.exe /c "powercfg -setactive d3a094af-8cd8-44cf-ad7b-15f8062c3432"
reg.exe add "HKCR\.bat\ShellNew" /ve /f
reg.exe add "HKCR\.vbs\ShellNew" /ve /f
reg.exe add "HKCR\.bat\ShellNew" /v FileName /f
reg.exe add "HKCR\.vbs\ShellNew" /v FileName /f
exit
@Echo off
wpeutil UpdateBootInfo
FOR /F "tokens=3* delims= " %%i in ('reg query HKLM\HARDWARE\DESCRIPTION\System\BIOS /v BaseBoardManufacturer') DO (SET BaseBoardManufacturer=%%i)
FOR /F "tokens=3* delims= " %%i in ('reg query HKLM\HARDWARE\DESCRIPTION\System\BIOS /v BaseBoardProduct') DO (SET BaseBoardProduct=%%i)
for /f "tokens=2* delims= " %%A in ('reg query HKLM\System\CurrentControlSet\Control /v PEFirmwareType') DO SET Firmware=%%B
REG add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\OEMInformation" /t REG_SZ /v Manufacturer /d "%BaseBoardManufacturer% "%BaseBoardProduct%"" /f
REG add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\OEMInformation" /t REG_SZ /v Model /d "booted in BIOS mode." /f
if %Firmware%==0x2 REG add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\OEMInformation" /t REG_SZ /v Model /d "booted in UEFI mode" /f
set ext=OEMLogo.intel& if "%PROCESSOR_IDENTIFIER:GenuineIntel=%"=="%PROCESSOR_IDENTIFIER%" set ext=OEMLogo.amd
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\OEMInformation" /v "Logo" /t REG_SZ /d "%windir%\System32\oobe\logo\%ext%" /f
Reg add HKLM\SOFTWARE\Classes\*\shell\Hash...\Command /v "" /t REG_SZ /d "\"%SystemRoot%\System32\GoHash.exe\" \"%%1\"" /f
Reg add HKCU\SOFTWARE\GoHash /v UserSetting /t REG_DWORD /d 2030 /f
reg add "HKLM\SYSTEM\ControlSet001\Control\ComputerName\ComputerName" /f /ve /t REG_SZ /d "Win10PEx64"
reg add "HKLM\SYSTEM\ControlSet001\Control\ComputerName\ComputerName" /f /v "ComputerName" /t REG_SZ /d "Win10PEx64"
reg add "HKLM\SYSTEM\ControlSet001\Control\ComputerName\ActiveComputerName" /f /v "ComputerName" /t REG_SZ /d "Win10PEx64"
reg add "HKLM\SYSTEM\ControlSet001\services\Tcpip\Parameters" /f /v "SyncDomainWithMembership" /t REG_DWORD /d 1
reg add "HKLM\SYSTEM\ControlSet001\services\Tcpip\Parameters" /f /v "hostname" /t REG_SZ /d "Win10PEx64"
reg add "HKLM\SYSTEM\ControlSet001\services\Tcpip\Parameters" /f /v "NV Hostname" /t REG_SZ /d "Win10PEx64"
start /b cmd.exe /c "hiderun.exe HideHotplug.cmd"
start /b AmlMaple.EXE
EXIT
больше ничего не запускается


Последний раз редактировалось: loban_ser (2019-12-11 09:23), всего редактировалось 1 раз

[Цитировать]

    nikzzzz
  • 215
  • Стаж: 9 лет 2 месяца
  • Сообщений: 3114
  • Репутация:127

    [+] [-]
loban_ser,
72185больше ничего не запускается
Сами по себе буквы дисков не поменяются, значит их что-то меняет.
В приведенном скрипте запускаются другие скрипты, которые могут изменить букву.
Какие именно, сказать не могу, это вопрос уже к автору скриптов.
К стати, при использовании PrimoRamDisk строки
IFEX X:\TEMP,TEAM ENVI PT=X:\TEMP|FILE --force B:\Temp!TEAM ENVI PT=B:\TEMP|PATH %PT%
TEAM EXEC =!setx.exe -m Temp %PT%|EXEC =!setx.exe -m Tmp %PT%
TEAM REGI HKCU\Environment\TEMP=%PT%|REGI HKCU\Environment\TMP=%PT%
REGI HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\TEMP=%PT%
REGI HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\TMP=%PT%
не нужны.

[Цитировать]

    loban_ser
  • 17796
  • Стаж: 6 лет 2 месяца
  • Сообщений: 578
  • Репутация:24

    [+] [-]
72188запускаются другие скрипты
Скрипты я ниже показал - т.е два батника, третий установка и запуск службы
Разобрался, дело было в USBSafelyRemove
aa
благодарю, отличная работа!
USBSafelyRemove можно взять из вашей сборки?
Он портабельный?

[Цитировать]

    nikzzzz
  • 215
  • Стаж: 9 лет 2 месяца
  • Сообщений: 3114
  • Репутация:127

    [+] [-]
loban_ser
Повторюсь - сама по себе буква не изменится.
Искать, что ее меняет в чужом скрипте дело достаточно муторное, особенно когда нет возможности поставить скрипт на отладку.
Возможно, автор скрипта сможет ответить на этот вопрос.

Страница 3 из 5


Показать сообщения:    

Текущее время: 19-Апр 22:10

Часовой пояс: UTC + 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы можете скачивать файлы