0
NSIS 설치 프로그램의 출력 폴더에 파일을 추출해야합니다. 파일의 이름에는 버전 번호가 들어 있습니다. 내 파일의 이름으로 쓰여진 번호를 읽는 방법이 필요합니다.NSIS에 의한 파일 이름의 번호 읽기
예 파일 이름 :
MyFile_4.3_runtime_80968_x64.exe
나는 자동으로 읽어 다음 코드를 사용 :
Var Version
Section
${GetFileVersion} "F:\FilesToBeInstalled\MyFile_4.3_runtime_?????_x64.exe" $Version
MessageBox MB_OK "Version: $Version"
SectionEnd
이전에 나를 위해 일을하는 데 사용됩니다. 그러나 갑자기 그 일이 멈췄습니다. 내가 올바른 번호를 쓰는 경우
?????
을 작성하는 대신 작동합니다. 예를 들어, 다음 코드는 나를 위해 작동 :
Var Version
Section
${GetFileVersion} "F:\FilesToBeInstalled\MyFile_4.3_runtime_80698_x64.exe" $Version
MessageBox MB_OK "Version: $Version"
SectionEnd
라인'$ {WordFind2X} "MyFile_4.3_runtime_80968.exe" "MyFile_4.3_runtime_" ".EXE" "-1"$ Version' 'MyFile_4.3_runtime_80968.exe' 광고를 사용합니다.이 광고는 파일 이름에'80968'이 있다는 것을 미리 모르는 내 문제입니다. – skm
나는 내 대답을 편집하고 FindFirst를 추가하여 해당 이름 패턴의 모든 인스턴스를 찾습니다. 이름 지정 패턴에 따라 여러 파일을 제외 할 수 있다면 첫 번째 히트 후 루프를 중단 할 수 있습니다. – idleberg
죄송 합니다만,'_x64 '는'.exe' 바로 앞에있는 파일 이름에도 존재한다는 사실을 잊어 버렸습니다. 이제 문제가 생길 것입니다. 이 상황을 어떻게 처리 할 수 있습니까? – skm