Цитата wolkow70:
Это не работает. Нумерация файла в $2 не меняется. »
|
все работает.
Код:
${If} ${FileExists} "$INSTDIR\RarExt.dll.0.tmp"
StrCpy $2 0
FindFirst $0 `$1` "$INSTDIR\RarExt*"
${DoUntil} ${Errors}
IntOp $2 $2 + 1
MessageBox MB_OK "$1" IDOK
FindNext $0 `$1`
${LoopUntil} $1 == ``
FindClose $0
MessageBox MB_OK "$2" IDOK
${EndIf}
Вот тока не пойму, зачем эта возня?
1. Если есть RarExt.dll.0.tmp, то $2 уже будет равен одному.
2. Все последующие файлы с именем
RarExt* будут увеличивать на единицу переменную $2
3. Если таких файлов будет больше двух, будет переименовываться последний найденный.
---
или так все таки лучше
вскидка на дальнейшее размышление...
Код:
${If} ${FileExists} "$INSTDIR\RarExt.dll.0.tmp"
FindFirst $0 `$1` "$INSTDIR\RarExt*"
${DoUntil} ${Errors}
Rename "$INSTDIR\$1" "$INSTDIR\RarExt.dll"
FindNext $0 `$1`
${LoopUntil} $1 == ``
FindClose $0
${EndIf}