윈 도 우 Context Menu에 vhd 생성메뉴
2023.10.08 14:31
안녕하세요
마우스우클릭메뉴에 다음과 같은 reg를 만들어서 vhd생성메뉴를 만들었습니다.
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Directory\Background\shell\CreateVHD]
@="Create New VHD File"
"Icon"="C:\\Windows\\System32\\imageres.dll,27"
[HKEY_CLASSES_ROOT\Directory\Background\shell\CreateVHD\command]
@="cmd /c echo create vdisk file=C:\\NewDisk.vhd Maximum=262144 type=expandable >Create.txt & echo attach vdi >>Create.txt & echo create partition primary >>Create.txt & echo online vol >>Create.txt & echo format fs=ntfs quick >>Create.txt & echo assign >>Create.txt & echo detach vdi >>Create.txt & diskpart /s create.txt & del create.txt © c:\\Newdisk.vhd %S & ren 1 NewDisk.vhd & del c:\\NewDisk.vhd"
그리고 Context Menu에서 실행시키면
cmd창 나오고 결과물인 vhd가 없네요... ㅠㅠ
cmd 내용은
microsoft diskpart 버전 10.0.17763.1911
copyright microsoft co
컴퓨터 :
100퍼센트 완료
diskpart가 가상 디스크 파일을 만들었습니다.
100퍼센트 완료
diskpart가 가상 디스크 파일을 연결했습니다.
diskpart에서 지정한 파티션을 만들었습니다.
diskpart에서 선택한 볼륨을 온라인으로 설정했습니다.
100퍼센트 완료
diskpart가 볼륨을 성공적으르 포맷했습니다.
diskpart에서 드라이브 문자 또는 탑제 지점을 할당했습니다.
diskpart가 가상 디스크 파일을 분리했습니다.
이렇게 되면서 창이 닫힘니다.
참고로 윈도우10에 어드민계정으로 사용중입니다.
댓글 [11]
-
타천사둘리 2023.10.08 17:52
-
사랑해요™ 2023.10.08 18:49
위 내용을 어떻게?
reg파일에 넣으면 되나요?
-
타천사둘리 2023.10.08 21:28
그건 저도 잘 모르겠어요.
몇 번 붙여넣기 시도해 봤는데,
안 되더라구요.
그냥 cmd 파일은 되는데요.
-
무월 2023.10.08 23:03
-
사랑해요™ 2023.10.08 23:49
와 감사합니다..
^^
-
suk 2023.10.09 13:58
질문에 올리신 것으로도 충분히 됩니다
단지, 마지막에 불필요하고, VHD 삭제 구문이 있군요. 다음 구문만 제거하시면 됩니다.
© c:\\Newdisk.vhd %S & ren 1 NewDisk.vhd & del c:\\NewDisk.vhd
다음처럼 사용하시면 됩니다
@="cmd /c echo create vdisk file=C:\\NewDisk.vhd Maximum=262144 type=expandable >Create.txt & echo attach vdi >>Create.txt & echo create partition primary >>Create.txt & echo online vol >>Create.txt & echo format fs=ntfs quick >>Create.txt & echo assign >>Create.txt & echo detach vdi >>Create.txt & diskpart /s create.txt & del create.txt"
-
사랑해요™ 2023.10.09 14:20
예^^
잘 실행되네요..
그런데 위에 무월님도 그렇고 바탕화면에 직접실행하면 오류가 나오고 새폴더라도 만들어 그폴더 안에서 실행하면 되네요..
그리고 결과물 vhd는 c드라이브에 만들어지네요 어느 드라이브에서 실행시켜도.. ^^
감사합니다.
편안한 휴일되시길...
-
suk 2023.10.09 14:56
바탕화면에서 오류가 생기는건 잘 모르겠습니다
우클릭한 폴더에 VHD가 만들어지는걸 원하시면 아래 부분만 수정하시면 됩니다
@="cmd /c echo create vdisk file=C:\\NewDisk.vhd
@="cmd /c echo create vdisk file=\"%V\\NewDisk.vhd\"
-
사랑해요™ 2023.10.09 15:29
바탕화면에서 오류는
cmd창에
C:\Users\Administrator\Desktop>diskpart
만 계속 출력되면서 실행이 안됩니다.
올려주신 @="cmd /c echo create vdisk file=\"%V\\NewDisk.vhd\"
로 하니 우클릭한 폴더에 생성은 되네요. ^^
그런데 드라이브 루트에는 생성이 안되네요
감사합니다..
-
suk 2023.10.09 17:43
지나가다가 잠시 힌트만 드리려고 했는데요. 점점 복잡해지는군요
1. 바탕 화면에서 오류는 처음 보는 것이라서 모르겠습니다. 저는 바탕 화면에서 VHD가 잘 만들어졌습니다
2. 루트 폴더에서 오류가 생기는건, diskpart에서는 절대 경로만 사용해야 합니다. 상대 경로 사용 못 합니다
루트가 아닌 폴더는 마지막에 \가 없어서 붙여주면 됩니다만, 이렇게 하면 루트에서는 마지막에 \\ 2개가 생기는 문제가 있더군요
루트와 루트 아닌 것 - 둘 중 하나 방식으로 해결했습니다. 실제 테스트한 구문입니다
@="cmd /c if /i not exist \"%V\\NewDisk.vhd\" echo create vdisk file=\"%V\\NewDisk.vhd\" Maximum=262144 type=expandable>Create.txt&echo attach vdi>>Create.txt&echo create partition primary>>Create.txt&echo online vol>>Create.txt&echo format fs=ntfs quick>>Create.txt&echo assign>>Create.txt&echo detach vdi>>Create.txt&diskpart /s create.txt&&del create.txt||echo create vdisk file=\"%VNewDisk.vhd\" Maximum=262144 type=expandable>Create.txt&&echo attach vdi>>Create.txt&&echo create partition primary>>Create.txt&&echo online vol>>Create.txt&&echo format fs=ntfs quick>>Create.txt&&echo assign>>Create.txt&&echo detach vdi>>Create.txt&&diskpart /s create.txt&&del create.txt"
다른 분들에게 주의사항: UAC 거치지 않고, 무조건 관리자 권한으로 실행되는 계정에만 적용됩니다
-
사랑해요™ 2023.10.09 18:46
바탕화면 오류는 저만 그런가보네요.. 테스트 할 컴도 없고...
최종(?)적인것에 만족스럽습니다.
감사합니다.
남은 휴일 편안하시길...^^
cmd 로 만들어 본 파일인데요.
위에 diskpart 가 없어도 되는 건가요?
아래 cmd 내용
diskpart
create vdisk file="C:\경로\파일명.vhd" maximum=25000 type=expandable
attach vdisk
create partition primary
format fs=ntfs quick label="NewVHD"
assign letter=V
exit