스크린 샷

제목 : WimTools beta1 일부분 테스트

지후빠

안녕하세요. 기존 WimBootOnce를 새 이름 WimTools로 갱신해보는 중입니다.

qnd님이 아이디어를 주시어 "1-6 다른 윈도우 부트 메뉴로 1회 부팅 + 제거.cmd"를 올려 봅니다.

qnd님 매번 감사합니다. ^^

테스트할 몇 가지도 올려 봅니다. 가능하신 분은 오류 여부 댓글로 부탁드립니다. ^^ PE에서도 가능할지...

- 이전 참고 링크 ; https://windowsforum.kr/gallery/19624548

 

WimTools-beta1.zip

-. 1-6 다른 윈도우 부트 메뉴로 1회 부팅 + 제거.cmd ; 아래 스샷, bcdedit/findstr/Wselect.exe 이용

-. add-Wim-to-BCD.cmd ; add-Wim-to-BCD.cmd "wim full path.wim" 형태로 실행, 경로에 괄호X, bcdedit/findstr/wimlib 이용

-. fix-ramdiskoptions.cmd ; 단독 실행, boot.sdi 경로 추가나 수정

-. WimBootOnce.cmd ; WimBootOnce.cmd "wim full path.wim" 형태로 실행, bcdedit/findstr/wimlib 이용

-. WimBootOnce.vbs ; 단독실행, 또는 WimBootOnce.vbs "wim full path.wim" 형태로 실행, TBWinPE.exe 이용

-. wimlib-imagex.exe / libwim-15.dll / Wselect.exe

 

 

1-6 다른 윈도우 부트 메뉴로 1회 부팅 + 제거.cmd 실행하면 부팅 항목 나열, 끝에 제거 기능 추가

1-6-1.png

부팅 항목 제거(스샷후 문구 수정됨) 클릭, 항목 선택하면

1-6-2.png

해당 항목 제거되고 다시 메뉴 나열, 다시 제거 누르고

1-6-3.png

1번 항목 (기본 윈도우) 클릭하면

1-6-4.png

1번 항목은 제거할 수 없게함.

1-6-5.png

아무 키나 누르면 다시 항목 나열

1-6-6.png

창 닫으면 취소로 종료

1-6-7.png

 

편히 주무십시오. ^^

댓글 [27]

지후빠

2023.07.11
23:15:15

깜빡하고 TBWinPE.exe 첨부하지 않아서 WimBootOnce.vbs 테스트는 qnd님 게시물

https://windowsforum.kr/review/19629879 첨부파일로 테스트하시면 될 것 같습니다.

https://windowsforum.kr/gallery/19624548 댓글에 사용법 있습니다.

cungice

2023.07.11
23:30:27

수고 많으셨습니다. 감사합니다.

dakija

2023.07.12
00:21:40

수고 많으셨습니다. 감사합니다.

지니제스트

2023.07.12
00:24:10

cmd가 외계어로 보이네요... 이건 낫놓고 ㄱ 자도 못읽는다는 말이 절로 나오네요.

cmd가 이렇게 고급언어였나 다시한번 느낍니다... 너무 간결하게 처리하는것도 놀랍구요.

오토잇만 할 줄 아는 사람으로써, cmd의 기능이 이렇게 부러울 수도 있다는걸 뼈저리게 느끼네요.

수고 많으셨습니다.

지후빠

2023.07.12
09:44:25

특수 문자를 사용해서 그렇게 보이지, 천천히 보시면 다 아시는 내용일 것입니다.^^

저는 상대적으로 오토잇을 가장 먼저 배운 것 같은데 사용을 안하니 기존 코드 수정하는 정도에 머물러 있습니다.ㅜㅜ

그나저나 못짱님은 왜 이렇게 소식이 없으신지.... ㅎ~

-0-

2023.07.12
07:27:27

와!  WimBootOnce 기능 좋아졌네요.

 

물론 PC용으로 만들어졌지만 PE에서도 잘되는데 프린스PE에서는 안되더군요. 

Dism.exe, findstr.exe, Dism.exe.mui, findstr.exe.mui 이외의도 파일이 필요한 건가요?

 

아님 어드민 실행 명령어 때문인가요?

 

지후빠

2023.07.12
09:49:36

전에 배치 파일로만 완성할때 dism을 사용하였는데, 이번에 78repack과 같은 곳에 둘 것이라서 wimlib-image로 바꿨습니다.^^

어느 정도 완성되면 PE에서도 작동 테스트하려고 합니다. 아직은 갈길이 먼 것 같습니다.

포럼99

2023.07.12
07:46:56

BOOTool_bcd로 몀몀은 어떠신지...

BootAll.ahk란 이름도 본적이 있습니다.

 

제거아이템 + 기본값으로 설정까지 넣어주시면 ..

 

바뀐 부분이 dism에서 imagex.exe군요.

저도 생각했던 아이디언데...

wimlib-imagex dir "%$w%" | findstr /i /c:"%$path%" || set $path=%$path:2=2\boot%

지후빠

2023.07.12
09:51:51

wimboot, wimconvert/optimize, wimextract 등을 모아놓을 것이라서 이름을 자칭 WimTools로 해봤습니다.

딱히 이거다 싶은 것이 없어서요. WimUtils, WimCmd 등을 생각해봤습니다만... ㅎ~

의견 감사합니다.^^

qnd

2023.07.12
08:41:28

수고많으셨습니다,

감사합니다.^^b msn029.gif

지후빠

2023.07.12
09:52:34

좋은 의견 주셔서 하나 더 추가할 수 있게 되었습니다. 고맙습니다.^^

shimspeed

2023.07.12
10:05:17

감사 합니다,.,,,,

유용하게 사용하겠습니다.

DengJang

2023.07.12
10:51:10

업그레이드 수고 많으셨습니다.

 

오늘이 윈도우 업데이트라 이따 저녁에 테스트 해야겠네요.

감사합니다~

상발이

2023.07.12
14:54:22

수고하셨습니다.

포럼99

2023.07.12
18:02:32

한가지 질문드립니다.

아래 배치파일 작성하고 pe.wim을 드래그앤드랍하면

"FINDSTR: /c 다음에 인수가 없습니다."라고 에러...... 뜨는 이유를 모르겠습니다.

 

@echo off & prompt $s & color 2f & setlocal & if {%1}=={} exit /b

net session >nul 2>&1 || (powershell start -verb runas '%0' '%1' & exit)

if {%2}=={} (set $w=%~1) else (set $w=%*)

wimlib-imagex dir "%$w%" | findstr /i /c:"%$path%" || set $path=%$path:2=2\boot%

 

echo. %$path%

pause

 

지후빠

2023.07.12
20:14:01

두번째 줄에 다음을 추가해 보십시오. 배치파일 폴더에 wimlib-image.exe libwim-15.dll 두 파일이 있어야 합니다.

pushd %~dp0

포럼99

2023.07.12
20:25:50

pushd %~dp0 넣어도 똑같습니다.

n.png

 

 

 

첨부 :
n.png [File Size:11.6KB/Download2]

지후빠

2023.07.12
20:30:00

for /f "tokens=1*" %%a in ('%$b% /enum {current} ^| findstr "path locale"') do set $%%a=%%b

이것이 필요합니다. 여기서 %$path% 환경변수가 생성됩니다.

포럼99

2023.07.12
20:33:18

넵. 다시 시도해 보겠습니다.

%$path% 때문에 많이 헤맸습니다.

잘 작동합니다.^^

 

\Windows\system32\boot\winload.efi

 

 

포럼99

2023.07.12
20:52:35

set "$b=\\%computername%\c$\windows\system32\bcdedit.exe" & echo on & cls

for /f "tokens=1*" %%a in ('%$b% /enum {current} ^| findstr "path locale"') do set $%%a=%%b

 

네트워크 경로를 찾지 못했습니다.  에러ㅠㅠ

 

그래서 아래를 추가 해서 성공했습니다.

for /f "tokens=1*" %%a in ('bcdedit /enum {current} ^| findstr "path locale"') do set $%%a=%%b

포럼99

2023.07.12
23:32:12

왕초보만 보세요. 저도 왕초보ㅠㅠ

 

WimBootOnce.cmd 주석처리+변수수정 해봤습니다.

-------------------------------------------------------------

 

@echo off & prompt $s & color 2f & setlocal & if {%1}=={} exit /b

net session >nul 2>&1 || (powershell start -verb runas '%0' '%1' & exit)

if {%2}=={} (set $w=%~1) else (set $w=%*)

for %%a in ("%$w%") do set "$n=%%~na" & set $d=%%~da

set "$be=\\%computername%\c$\windows\system32\bcdedit.exe" & echo on & cls

 

for /f "tokens=2 delims=:" %%a in ('chcp') do if "%%a"==" 949" (set $t=1) else (set $t=3)

for /f "tokens=%$t%" %%a in ('%$be% /create /d "%$n%" /application osloader') do set $guid=%%a

for /f "tokens=1*" %%a in ('%$be% /enum {current} ^| findstr "path locale"') do set $%%a=%%b

rem 위 라인에서 %$path%, %$locale% 환경변수가 생성됨

wimlib-imagex dir "%$w%" | findstr /i /c:"%$path%" || set $path=%$path:2=2\boot%

 

%$be% /set %$guid% device ramdisk=[%$d%]"%$w:~2%,{ramdiskoptions}

%$be% /set %$guid% path %$path%

%$be% /set %$guid% locale %$locale%

%$be% /set %$guid% inherit {bootloadersettings}

%$be% /set %$guid% nointegritychecks Yes

%$be% /set %$guid% osdevice ramdisk=[%$d%]"%$w:~2%,{ramdiskoptions}

%$be% /set %$guid% systemroot \Windows

%$be% /set %$guid% detecthal Yes

%$be% /set %$guid% winpe Yes

 

%$be% /bootsequence %$guid%

@reg add HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnce /v "*1" /d "bcdedit /delete %$guid%" /f

 

@endlocal&echo.&echo.3초 후 재부팅합니다.&pause&shutdown.exe /r /t 3&pecmd shut r

UU自適

2023.07.12
21:24:16

win11에서 선택 1회 재부팅 잘 됩니다.

감사합니다

하늘소

2023.07.12
23:20:22

항상 수고가많으시고 감사합니다.

풀피리

2023.07.13
12:28:06

수고 많으셨습니다.

장마철 건강 잘 챙기시기 바랍니다.

 

목수

2023.07.15
07:17:38

수고하셨습니다

붉바리

2023.07.21
14:14:31

감사합니다.

개골구리

2023.09.19
21:05:40

감사합니다.

List of Articles
[공지] 스크린샷 업로드 유의사항 3
XE1.11.6 Layout1.4.8