Как переместить подкаталог с его содержимым в другой каталог с помощью NSIS - PullRequest
0 голосов
/ 11 апреля 2019

это первый раз, когда я работаю с NSIS, я хочу отредактировать скрипт NSIS, чтобы разрешить мне:

Если первая установка -> создать каталог «Affaires» в папке «C: \ Users \ ali.ait-mouhoub.ext \ AppData».

Если это обновление (поэтому каталог «Affaires» уже существует в «C: \ NOE») -> переместите каталог «Affaires» с его содержимым в «C: \ Users \ ali.ait-mouhoub». вн \ AppData».

Текущий скрипт создает каталог "Affaires" в "C: \ N.O.E".

Не могли бы вы помочь мне изменить мой сценарий для удовлетворения моих потребностей?

1 Ответ

0 голосов
/ 11 апреля 2019

Если и новое, и старое местоположения находятся на одном и том же томе, вы можете использовать Rename:

Section
Rename "$InstDir\Stuff" "$InstDir\OldStuff"
SectionEnd

Если новое местоположение может находиться на другом томе, то вам нужно скопировать + удалить:

!include LogicLib.nsh

Section
ClearErrors
CopyFiles /Silent "$InstDir\Stuff" "x:\Backup"
${If} ${Errors} 
  MessageBox MB_ICONSTOP "Unable to move!"
${Else}
  RMDir /R "$InstDir\Stuff"
${EndIf}
SectionEnd
...