반응형
  • 윈도우 설치 파일 선택기 v3.0
     - v1.0과 v2.0의 기능을 통합하고, 탭으로 분리하여 v3.0으로 개선하였습니다.
     - v2.0에서 지원하지 않았던 ESD 확장자를 v3.0에서 지원하도록 개선하였습니다.
     - 언어(KO/EN) 콤보박스 동기화 기능을 추가하였습니다.

    Tools 폴더를 X 드라이브의 루트 경로에 그대로 두고 사용하는 것을 권장합니다.
     └▶ PE 탑재 드라이브의 루트 경로

    윈도우 설치 파일 선택기는 자동/수동 탭에서 선택한 파일 경로 인수를 배치 파일에 전달하는 기능을 수행하므로, 다른 배치 파일과 연동하여 사용할 수 있습니다.
     └▶ 각 배치 파일의 이름은 유지하되, 내용을 교체하여 사용할 수 있습니다.

    개별 배포에서는 상단 바로가기 실행 버튼 4개를 제외하였습니다.
     └▶ 탐색기 실행, 파티션 도구, WinNTSetup, 전원 옵션 버튼 제외

Choose_Installation_File_v3.0.zip
7.51MB

 

 

 

https://noways.tistory.com/2050

 

[KO/EN] 윈도우 설치 파일 선택기 v2.0 - 최종 버전

디렉토리 깊이에 따른 자동 검색 기능으로 개선되었습니다.고정 드라이브를 탐색한 후, 광학 드라이브에서 *.iso 및 *.wim 파일을 순차적으로 탐색합니다.검색 범위는 설정된 디렉토

noways.tistory.com

 

https://noways.tistory.com/2045

 

윈도우 설치 파일 선택기 v1.0

윈도우 설치 파일 선택기 v1.0 - 기능 개선첨부된 소스 파일과 유튜브 영상을 참고하여 응용해 보세요. 윈도우 설치 파일 선택기 Part-n-EWS-3b 연동 초안https://noways.tistory.com/2044 윈도우

noways.tistory.com

 

 

 

윈도우 설치 파일 선택기 v3.0(기능 통합) - 움짤 GIF

 

런처바(LaunchBar) 윈도우 설치 파일 선택기 v3.0 - 연동 테스트 움짤 GIF

 

■ 동영상 제목 클릭 후 전체화면(1080P)시청 가능합니다.

 

정보가 도움이 되었다면 아래 링크로 커피를 후원 해주세요. ^^

donaricano-btn

반응형
반응형

윈도우 설치용 boot.wim 인터넷 활성화 간편 테스트

  • Pecmd.exe : Pecmd.exe pecmd.ini 설정 값으로 실행
  • WinXShell.exe : WinXShell.exe -winpe 옵션으로 실행

 

  • PENetwork.exe : 사용자 프로파일 로드 실행(PENetwork.exe /UseProfiles)

 

네트워크 드라이브 연결 후 윈도우 설치 가능

 

 

인터넷은 크롬 포터블로~

 

 

 

■ 동영상 제목 클릭 후 전체화면(1080P)시청 가능합니다.

 

정보가 도움이 되었다면 아래 링크로 커피를 후원 해주세요. ^^

donaricano-btn

반응형
반응형

Diskpart_partition_script_v4.0.zip
11.63MB

 

1. Diskpart 파티션 스크립트 v4.0

 - v3.5 기능 포함 및 성능 개선
 - 디스크 및 파티션의 정보가 각 리스트뷰에 출력되도록 수정
 - 상태 값 프리셋 저장 및 초기화 기능 개선

2. 기본값, 프리셋1, 프리셋2, 프리셋3을 선택 후 개별적으로 저장 가능
 - 프리셋 저장은 UEFI/GPT 구성만 지원 합니다.

 - BIOS/MBR 구성은 라디오 버튼을 통해 기본값으로 제한(윈도우 All or Data 파티션 분할 2가지 옵션만 사용 가능)

 - setting.ini 파일은 저장 기능을 사용하거나 메모장으로 열어 수동으로 수정하셔도 됩니다.

3. 디스크 번호 선택 시 자동 정보 출력
 - 디스크 번호를 선택하면 해당 파티션 정보가 자동으로 출력되도록 개선

4. 인터페이스 공간 효율화
 - 하단 프로그레스바를 제거하고 팝업 창으로 진행 상황을 출력
 - 작업 단계별 진행 상황 표시

 - 디스크 모델명 길이 확장 및 가운데 정렬 통일

5. 작업 시작 시 각 단계별 진행 상황을 팝업 프로그레스바에 표시

 

https://noways.tistory.com/2068

 

Diskpart 파티션 스크립트 v3.5 - 기능 개선 및 버그 수정

프리셋  기본값, 1,  2, 3 저장 샘플Diskpart 파티션 스크립트 v3.5 프리셋 샘플 - 움짤 GIF└▶ 상태 값 프리셋으로 저장 및 초기화└▶ 확정된 것은 아니며, 일단 기본적인 기능만 구현   영문 

noways.tistory.com

 

 

파티션 정보 출력 리스트뷰 추가

 - 디스크, 파티션 개별 리스트뷰에 정보 출력

 

 

디스크 번호 선택시 파티션 정보가 자동으로 출력 되도록 개선

 - 기본값 포함 프리셋1, 2, 3 활용 개선

 

 

 

 

 

작업 시작 진행 상황이 단계별로 팝업 프로그레스 창에 표시됩니다.

 - 디스크 초기화 중 . . .

 

 

 

작업 시작 진행 상황이 단계별로 팝업 프로그레스 창에 표시됩니다.

 - 시스템(EFI) 파티션 생성 중 . . .

 

 

 

작업 시작 진행 상황이 단계별로 팝업 프로그레스 창에 표시됩니다.

 - MSR 파티션 생성 중 . . .

 

 

 

작업 시작 진행 상황이 단계별로 팝업 프로그레스 창에 표시됩니다.

 -  윈도우 파티션 생성 중 . . .

 

 

 

작업 시작 진행 상황이 단계별로 팝업 프로그레스 창에 표시됩니다.

 - Data 파티션 생성 중 . . .

 

 

 

작업 시작 진행 상황이 단계별로 팝업 프로그레스 창에 표시됩니다.

 - 복원 파티션 생성 중 . . .

 

 

 

작업 시작 진행 상황이 단계별로 팝업 프로그레스 창에 표시됩니다.

 - 마무리 중 . . .

 

 

Diskpart 파티션 스크립트 v4.0 샘플 - 움짤 GIF

 

■ 동영상 제목 클릭 후 전체화면(1080P)시청 가능합니다.

 

정보가 도움이 되었다면 아래 링크로 커피를 후원 해주세요. ^^

donaricano-btn

반응형
반응형

프리셋  기본값, 1,  2, 3 저장 샘플

Diskpart 파티션 스크립트 v3.5 프리셋 샘플 - 움짤 GIF

└▶ 상태 값 프리셋으로 저장 및 초기화

└▶ 확정된 것은 아니며, 일단 기본적인 기능만 구현

 

 

 

영문 Windows 및 PE 환경에서 디스크 및 파티션 정보 출력 오류 수정 
 └▶ 한국어와 영문 환경 모두에서 시스템 언어를 우선으로 하여 출력되도록 개선

 

; Windows API를 사용하여 시스템 언어 확인
Func GetSystemDefaultUILanguage()
    Local $hKernel32 = DllOpen("kernel32.dll")
    If $hKernel32 = -1 Then
        ;MsgBox(16, "Error", "Unable to open kernel32.dll.")
        Exit
    EndIf

    Local $aResult = DllCall($hKernel32, "ushort", "GetSystemDefaultUILanguage")
    DllClose($hKernel32)

    If @error Or Not IsArray($aResult) Then
        ;MsgBox(16, "Error", "Failed to call GetSystemDefaultUILanguage.")
        Exit
    EndIf

    Return $aResult[0]
EndFunc

 

    ; 중복 방지 배열 선언
    Local $aUsedDisks = []

    ; 디스크 정보 추출
    Local $aLines = StringSplit($diskContent, @CRLF, 1)
    For $i = 0 To UBound($aLines) - 1
        Local $sLine = StringStripWS($aLines[$i], 3)

        ; 언어에 맞는 정규식 선택
        Local $aData
        If $bIsKorean Then
            ; 한국어 정규식
            If StringRegExp($sLine, "^디스크\s+(\d+)\s+(\S+)") Then
                $aData = StringRegExp($sLine, "^디스크\s+(\d+)\s+(\S+)\s+([\d,]+\s+[A-Za-z가-힣]+)\s+([\d,]+\s+[A-Za-z가-힣]+)\s*(\S*)\s*(\S*)$", 3)
            EndIf
        Else
            ; 영어 정규식
            If StringRegExp($sLine, "^Disk\s+(\d+)\s+(\S+)\s+([\d,]+\s+[A-Za-z]+)\s+([\d,]+\s+[A-Za-z]+)\s*(\S*)\s*(\S*)$") Then
                $aData = StringRegExp($sLine, "^Disk\s+(\d+)\s+(\S+)\s+([\d,]+\s+[A-Za-z]+)\s+([\d,]+\s+[A-Za-z]+)\s*(\S*)\s*(\S*)$", 3)
            EndIf
        EndIf

        If IsArray($aData) Then
            Local $diskNumber = $aData[0]
            
            ; 이미 출력된 디스크 번호인지 확인
            If Not IsInArray($diskNumber, $aUsedDisks) Then
                Local $size = $aData[2]
                Local $dyn = $aData[4] == "*" ? "GPT" : "MBR"

                ; detail disk 명령어 실행 및 결과 읽기
                FileDelete($sDiskInfoFile) ; 이전 명령 초기화
                FileWrite($sDiskInfoFile, "select disk " & $diskNumber & @CRLF & "detail disk" & @CRLF)
                RunWait(@ComSpec & " /c diskpart /s " & $sDiskInfoFile & " > " & $sResultFile, "", @SW_HIDE)
                Local $detailContent = FileRead($sResultFile)

                ; 디스크 모델 추출
                Local $model = "-"
                ; 디스크 모델 추출 정규식 수정
                If $bIsKorean Then
                    Local $aModelMatch = StringRegExp($detailContent, "(?m)^([^\r\n]+)\r\n디스크 ID:", 1)
                Else
                    Local $aModelMatch = StringRegExp($detailContent, "(?m)^([^\r\n]+)\r\nDisk ID:", 1)
                EndIf
                
                If IsArray($aModelMatch) Then
                    $model = StringStripWS($aModelMatch[0], 3)
                EndIf

                ; 디스크 정보를 ListView에 추가
                GUICtrlCreateListViewItem($diskNumber & "|" & $dyn & "|" & $size & "|" & $model, $hListView)

                ; 사용된 디스크 번호 배열에 추가
                _ArrayAdd($aUsedDisks, $diskNumber)
            EndIf
        EndIf
    Next

 

 

    ; 중복 방지 배열 선언
    Local $aUsedPartitionNumbers = []

    ; 파티션 정보 추출
    Local $aLines = StringSplit($partitionContent, @CRLF, 1)
    For $i = 0 To UBound($aLines) - 1
        Local $sLine = StringStripWS($aLines[$i], 3)

        ; 언어에 맞는 정규식 선택
        Local $aData
        If $bIsKorean Then
            ; 한국어 파티션 정보 정규식
            If StringRegExp($sLine, "파티션\s+(\d+)\s+(\S+)\s+([\d,]+\s+[A-Za-z]+)\s+([\d,]+\s+[A-Za-z]+)") Then
                $aData = StringRegExp($sLine, "파티션\s+(\d+)\s+(\S+)\s+([\d,]+\s+[A-Za-z]+)\s+([\d,]+\s+[A-Za-z]+)", 3)
            EndIf
        Else
            ; 영어 파티션 정보 정규식
            If StringRegExp($sLine, "Partition\s+(\d+)\s+(\S+)\s+([\d,]+\s+[A-Za-z]+)\s+([\d,]+\s+[A-Za-z]+)") Then
                $aData = StringRegExp($sLine, "Partition\s+(\d+)\s+(\S+)\s+([\d,]+\s+[A-Za-z]+)\s+([\d,]+\s+[A-Za-z]+)", 3)
            EndIf
        EndIf

        If IsArray($aData) Then
            Local $partitionNumber = $aData[0]
            
            ; 중복 파티션 번호 체크
            If Not IsInArray($partitionNumber, $aUsedPartitionNumbers) Then
                ; 파티션 정보를 ListView에 추가
                GUICtrlCreateListViewItem($aData[0] & "|" & $aData[1] & "|" & $aData[2] & "|" & $aData[3], $hListView)

                ; 사용된 파티션 번호 배열에 추가
                _ArrayAdd($aUsedPartitionNumbers, $partitionNumber)
            EndIf
        EndIf
    Next

 

 

 

■ 동영상 제목 클릭 후 전체화면(1080P)시청 가능합니다.

 

정보가 도움이 되었다면 아래 링크로 커피를 후원 해주세요. ^^

donaricano-btn

반응형

+ Recent posts