설치 제거시, 설치된 서브 디렉토리 목록 (List - C#)을 거쳐 삭제합니다. 나는 디렉토리가 존재하는지 확인하고, 그렇다면 제거하고 싶다. 여기에 코드입니다 :NSIS - 어떻게 디렉토리를 만들지 못하게합니까?
//here it deletes the testfolder1 directory - perfect
${If} ${FileExists} "$MUSIC\testFolder1\*"
RMDir "$MUSIC\testFolder1"
${EndIf}
//problem - here, instead of ONLY CHECKING if directory exists,
// it creates "testFolder1" again!
${If} ${FileExists} "$MUSIC\testFolder1\testfolder2\*"
RMDir "$MUSIC\testFolder1\testfolder2"
${EndIf}
내가 두 IFS를 교환 할 수 있고 그것이 작동 할 알고 있지만 디렉토리 내 목록에서 임의의 순서로되어 있기 때문에, 아무것도 해결되지 않습니다. NSIS가 존재하는지 확인하면서 디렉토리를 생성하는 것을 막을 수있는 방법이 있습니까? 온라인 솔루션을 찾았지만 아무 것도 발견하지 못했습니다.
고마워, 효과가있다. 날 믿어, 내 초기 접근 방식은 폴더를 만듭니다 - 가능합니다! 방금 다시 테스트했습니다. 먼저 testfolder1을 삭제하고 두 번째로 testfolder1 \ testfolder2를 삭제하면 testfolder1이 거기에 있습니다 (생성됨). 명령을 바꾸면 둘 다 삭제됩니다! 원하는 경우 직접 사용해 볼 수 있습니다. – Dovile
나는 그것이 가능하지 않다고 말하고있다. 탐색기를 사용하여 신뢰할 수 없기 때문에 검사하지 마십시오. – Anders