0
파일이 있는지 확인하고 다른 디렉토리로 복사하려고합니다. 불행히도 파일은 AppData 폴더에 있습니다.NSIS AppData에서 파일 검색 및 복사
CheckFile:
!define INSTDIR_DATA "$APPDATA\Local\VirtualStore\Program Files\SomeFolder"
IfFileExists INSTDIR_DATA\SettingsFile.ini CopyOver NotHere
문제없이이 섹션에 들어가지만 명시 적으로 파일이 있는지 확인하는 것처럼 보이지 않을 수 있습니다. 내가 놓친 게 있니? 현재 사용자 디렉토리를 통해이 디렉토리를 검색해야하므로 모든 사용자에게이 디렉토리를 설정하지 않아도됩니다. 내 시스템에
DetailPrint $AppData
DetailPrint $LocalAppdata
이 인쇄 :
C:\Users\Anders\AppData\Roaming
C:\Users\Anders\AppData\Local
$의 AppData 실제로의 AppData "루트"하지만 그것의 로밍 일부가 아닌
이렇게하면 도움이되지만 여전히 제대로 작동하지 않습니다. "$ LocalAppdata \ VirtualStore \ Program Files \ Atari \ Nerf \ System"으로 올바르게 정의되어 있습니까? 관리자 권한으로이 기능을 실행하려고 할 때 현재 실행 수준을 명시 적으로 설정하지 않았습니까? VirtualStore에서 파일 찾기/복사에 정확히 어떤 영향을 미칩니 까? – Rajada
define을 사용하는 구문은 $ {name}이므로 실제 코드가 IfFileExists "$ {INSTDIR_DATA} \ ..."를 사용하기를 바랍니다. 실행 수준은 VirtualStore에서 파일을 찾는 데 실제로 영향을주지 않아야하지만 설정하지 않고 상승되지 않은 경우에는 $ ProgramFiles (http://support.microsoft.com/kb/)로 복사 할 수 없습니다. 927387 # MT3). 여전히 작동시키지 못한다면 Microsoft/Sysinternals의 프로세스 모니터를 사용하여 현재 사용중인 경로가 무엇인지 확인해야합니다. – Anders
아, 그런 식으로 간과 할 것입니다. 감사! – Rajada