0
다음 함수를 사용하여 DLL 파일을 재귀 적으로 검색 할 수 있습니다.NSIS 자동 모드에서 파일 찾기가 작동하지 않습니다.
Function ProcessDLLFiles
Exch $0
Push $1
Push $2
FindFirst $1 $2 "$INSTDIR\*.dll"
loop:
IfErrors end
DetailPrint 'Found "$0\$2"'
FindNext $1 $2
goto loop
end:
FindClose $1
FindFirst $1 $2 "$0\*.*"
dirloop:
IfErrors dirend
IfFileExists "$0\$2\*.*" 0 dirnext
StrCmp $2 "." dirnext
StrCmp $2 ".." dirnext
Push "$0\$2"
call ${__FUNCTION__}
dirnext:
FindNext $1 $2
goto dirloop
dirend:
FindClose $1
Pop $2
Pop $1
Pop $0
FunctionEnd
설치 프로그램을 정상적으로 실행하면 예상대로 작동하고 연결된 폴더의 모든 dll 파일을 찾습니다.
그러나 검색중인 디렉토리로 이동하여 파일이 있음을 알 수 있지만이 파일을 자동 모드로 찾지 못합니다. 설치하는 동안 이미 관리자 권한을 요청하고 관리자는 폴더의 dll 파일에 대한 전체 권한을 갖습니다.
왜 파일을 찾을 수 없습니까?
이것은 nxs 플러그인을 사용하는 방법에있어 문제가있는 것 같습니다. nxs는 자동 설치 모드에서 사용되지만 표준 설치에서는 사용되지 않습니다. – jkh