저도 전문가는 아닌데 대충 때려맞췄어요 -ㅅ-
그 부분에 있는 문장을 주석처리를 했습니다.
# MUI 1.67 compatible : 매크로 삽입 ------------------------------------------------------------
밑에 두 매크로 주석
;!insertmacro Locate
;!insertmacro un.Locate
# 섹션 삽입 함수 ------------------------------------------------------------
Function PatchRename ;patch-?.mpq 중 patch-2.mpq 이 아닌 파일을 골라내어 백업하는 함수
요쪽에서 밑에 두문장 주석처리하시고
; Rename "$INSTDIR\Data\$R7" "$INSTDIR\Old\Data\$R7"
; Rename "$INSTDIR\Data\$R7" "$INSTDIR\MaxUI_Old_$5\Data\$R7"
# 기본 섹션 ------------------------------------------------------------
## 기존에 있는 타 UI가 있는지 검사
요기서 세줄 주석
; ${DirState} "$INSTDIR\Data\Fonts" $R1
; StrCmp $R1 1 backup
;${Locate} "$INSTDIR\Data" "/M=patch-?.mpq /G=0" "OldUI"
## 기존에 있는 타 UI 백업 (Old 폴더에)
요것도 세줄
;CreateDirectory "$INSTDIR\Old\Data"
;Rename "$INSTDIR\Data\Fonts" "$INSTDIR\Old\Data\Fonts"
;${Locate} "$INSTDIR\Data" "/M=patch-?.mpq /G=0" "PatchRename"
## 이전 버전 백업 (Old_버전 폴더에)
요것도
; CreateDirectory "$INSTDIR\${PRODUCT_NAME}_Old_$5\Data"
; Rename "$INSTDIR\Data\Fonts" "$INSTDIR\${PRODUCT_NAME}_Old_$5\Data\Fonts"
; ${Locate} "$INSTDIR\Data" "/M=patch-?.mpq /G=0" "PatchRename"
# 제거 함수 ------------------------------------------------------------
;Function un.PatchDelete
## patch-?.mpq 파일 삭제 시 patch-2.mpq 파일 삭제 방지를 위해 골라내는 함수
; StrCmp $R7 "patch-2.mpq" +2
; Delete "$R9"
; Push $0
;FunctionEnd
;Function un.PatchRenameInvert
## patch-?.mpq 파일 복구 시 patch-2.mpq 파일 복구 방지를 위해 골라내는 함수
; StrCmp $R7 "patch-2.mpq" +2
; Rename "$INSTDIR\Old\Data\$R7" "$INSTDIR\Data\$R7"
; Push $0
;FunctionEnd
# 제거 섹션 ------------------------------------------------------------
## 파일 삭제
두줄 주석
; RMDir /r "$INSTDIR\Data\Fonts"
; ${un.Locate} "$INSTDIR\Data" "/M=patch-?.mpq /G=0" "un.PatchDelete"
## 원래 설정으로
; Rename "$INSTDIR\Old\Data\Fonts" "$INSTDIR\Data\Fonts"
; ${un.Locate} "$INSTDIR\Old\Data" "/M=patch-?.mpq /G=0" "un.PatchRenameInvert"
이렇게 주석처리해보시고 설치테스트해보세요
임의폴더에 와우폴더처럼 Data, Interface, WTF, Fonts 만들고 Data에는 실제 와우폴더안 파일명이랑 똑같이 만들고 Patch-3.mpq 이런것도 만들어보시구염.